Bir dosya yolunda ~ ne anlama geliyor?


41

Ne yapar ~ mutlak bir dosya yolunda mı demek istiyorsunuz?

Bunu derleme komut dosyaları gibi şeylerin çıktısında görüyorum ama yol yok.


25
Hangi işletim sistemi?
— ChrisF

Windows değil varsayılan zar atma?
— Pacerier

Yanıtlar:


34

Normalde, kullanıcının ana dizini, örn. ~mike/ kullanıcı olurdu mike 'nin ana dizini ~/ kendi ev dizininiz olur. Ancak, bana olup olmadığı belli değil ~/ ve ~mike/ mutlak ya da akraba olarak kabul edilmeli; verilen tanıma bağlı görünüyor (eğer bir kişi yetkili bir referans bulabilirse, lütfen bir yorum gönderin).

Unix tabanlı sistemlerden bahsettiğimi unutmayın.

Görmek http://en.wikipedia.org/wiki/Home_directory#Unix


3
Mutlaktırlar, çünkü mutlak yolların eş anlamlısıdırlar: UNIX'de mutlak yol, içeriğinden çıkarılabilir. /etc/login dosya. Genişletme geleneksel olarak kabuk tarafından yapılır, ancak “komut dosyası” gibi gösterileri olan herhangi bir dil de bunu yapacaktır.
— Charles Stewart

2
+1: Ben hakkında bilmiyordum ~username/ şey.
— Wuffers

2
İlginçtir, Windows PowerShell de kabul eder ~ Kullanıcının ana dizini ile eşanlamlı olarak
— Joey

1
Jeffery Snover, PowerShell’in asıl olarak VIM / EMAC’lere dayandığını söyledi
— Anonymous Type

1
@Charles Stewart tartışmasız en azından kullanıcı bağlamına bağlı olarak görecelidir. Ayrıca, bazı referanslar, açıkça belli olmayan, dosya sisteminin kökünden verilen mutlak bir yolu tanımlar. İfadenize bir referansınız varsa, lütfen paylaşın!
— Adrian Mouat

21

Aslında Adrian Mouat ve studiohack tarafından verilen cevapların her ikisi de doğrudur.
Sınırlı adlandırma kuralı olan işletim sistemlerinde (Windows / DOS'un eski sürümü vb.) Uzun bir ad anlamına gelir.

e.g. "c:\program files\" is equivalent to "c:\progra~1\"

Bazı işletim sistemlerinde (yani Unix), home-dir (ve mutlak ama kanonik olmayan bir yol olarak görülebilir) anlamına gelir.
e.g."/a/vol01/usr/mike/" might be shortened to "~/mike/"
* 'usr' ev dir.


2
Yapı kodları bağlamında, muhtemelen Unix merkezli sürümdür.
— Charles Stewart

2
Unix yolları genellikle ters eğik çizgi yerine eğik çizgi kullanır.
— Torben Gundtofte-Bruun

@torbengb, true ... opps
— Eran

1
Xenorose'un aksi halde mükemmel cevabı için küçük bir düzeltme. "Progra ~ 1" gibi dosya adları eski işletim sistemleri için değil. Windows 7 sistemim hala bunları kullanıyor. (Görmek için dir / x yapın.) Bu, modern sistemlerdeki uzun dosya adlarını bilmeyen eski yazılımları destekleyen eski bir özelliktir. Eski yazılım tüm dosya adlarını takip ettiğini düşünüyor 8.3 kongre . Bir dosya adı bu kuralla çalışmadığında, dosya sistemi otomatik olarak yaratır ikinci, 8.3 uyumlu bir isim.
— Isaac Rabinovitch


5

ASP.NET programlama yaparsanız, web sitesinin en üst seviyesi anlamına gelir; ../../images/some_image.jpg (ve yuva seviyenizi yanlış belirlemek!) kullanarak gezinmek yerine, ~ / images / some_image.jpg


1
/images/some_image.jpg sizi herhangi bir web sitesinin köküne götürmelisiniz. Tilde ASP.NET'te hangi ek işlevleri sağlamaktadır?
— Sonny

7
~, sanal bir dizin kullanıyorsanız, sizi web sitesi kökü ile aynı olmayan web uygulaması köküne götürür. Örneğin, web siteniz myapp sanal dizinde myserver yüklü ise, ~ / images / myimage.jpg sunucum / myapp / images / myImage.jpg . Görmek msdn.microsoft.com/en-us/library/ms178116.aspx .
— MCS

1

İşte daha iyi anlamanız için size yardımcı olabilecek birkaç ipucu:

$ readlink -f ~

$ echo $HOME

Not: $ kullanıcı komut satırı istemini belirtmek için bir kuraldır, komutların bir parçası değildir.


'readlink', bir iç veya dış komut olarak tanınmıyor.
— Pacerier

@vtest bunun nedeni, bu yorumdaki örnekte Windows değil unix tabanlı sistemler içindir.
— dudewad
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.