Diğer sorularınızdan OS X kullanıyorsunuz. OS X'teki varsayılan HFS + dosya sistemi büyük / küçük harf duyarlı değildir: aynı dizinde "abc" ve "ABC" adlı iki dosyaya erişemez ve erişmeye çalışamazsınız. her iki isim de aynı dosyaya ulaşacaktır. Aynı şey Cygwin altında veya büyük / küçük harf duyarlı dosya sistemlerinde (FAT32 veya ciopfs gibi ) olabilir.
grepGerçek bir çalıştırılabilir olduğundan , dosya sistemine (dizinlerinde PATH) baktı . Kabuğunuzun /usr/binher ikisini de aradığında grepveyaGREPgrep çalıştırılabilir dosyayı bulacaktır .
Kabuk yerleşikleri dosya sisteminde aranmaz : yerleşik oldukları için, kabuğun kendi içinde (büyük / küçük harfe duyarlı) dize karşılaştırmaları yoluyla erişilir.
Karşılaştığınız şey ilginç bir durum. cdBir yerleşik olmasına rağmen , büyük küçük harf duyarlı erişimli, CDçalıştırılabilir olarak bulunur /usr/bin/cd. cdYürütülebilir oldukça işe yaramaz çünkü: cdGeçerli kabuk yürütme ortamı etkiler, her zaman bir kabuk olarak verilmiştir düzenli yerleşik ama orada cdyürütülebilir POSIX aşkına kendisi için dizini değiştirir ve daha sonra hemen sonlandırır neyse, çevredeki kabuk bırakarak başladığı yer.
Bunları typeyerleşik olarak deneyebilirsiniz :
$ type cd
cd is a shell builtin
$ type CD
CD is /usr/bin/CD
typeBu komutu çalıştırdığınızda kabuğun ne yapacağını söyler. Çalıştırdığınızda cdyerleşik yapıya erişirsiniz, ancak CDçalıştırılabilir dosyayı bulur. Diğer yerleşikler için yerleşik ve yürütülebilir dosya makul derecede uyumlu olacaktır (deneyin echo), ancak cdbu mümkün değildir.
alias GREPveyawhich GREPçıkarın.