Arasındaki fark nedir which
ve whereis
?
which
ve whereis
veriyor apple.stackexchange.com/questions/259047/…
type
üstün olduğunu hissediyorum . Ayrıca tanımlanmış takma adları, işlevleri vb. De bilir
Arasındaki fark nedir which
ve whereis
?
which
ve whereis
veriyor apple.stackexchange.com/questions/259047/…
type
üstün olduğunu hissediyorum . Ayrıca tanımlanmış takma adları, işlevleri vb. De bilir
Yanıtlar:
Öğrenmeye whereis
ve which
kullanmaya ne dersiniz whatis
?
$ whatis which
which (1) - shows the full path of (shell) commands
$ whatis whereis
whereis (1) - locate the binary, source, and manual page files for a command
Temel olarak, whereis
" which
yürütülebilir " dosyaları arar , sadece çalıştırılabilir dosyaları arar.
Nadiren kullanırım whereis
. Öte yandan which
, özellikle senaryolarda çok kullanışlıdır. which
sorusunun cevabı nedir: Bu komut nereden geliyor?
$ which ls
/bin/ls
$ whereis ls
ls: /bin/ls /usr/share/man/man1p/ls.1p.bz2 /usr/share/man/man1/ls.1.bz2
whereis
, bunun için değil which
.
which
gerçek yolu gösterir. which
Gösterilen yolun, işaret ettiği yolun sadece bir bağlantısı olmadığından emin misiniz whereis
? Belki bir kabuk takma adıdır. Kısaca, koşmayı dene type your_cmd_here
.
whereis
belirtilen bir komut için standart * nix konumlarını arar.
which
Kullanıcıya özel PATH’inizi arar (arama yapılan konumların bazılarını içerebilir ve diğerlerini içermeyebilir - PATH’nize eklemişseniz arama whereis
yapmayan bazı yerleri de içerebilir )
Adam sayfalarını alıntı:
nerede :
burada, belirtilen dosyalar için kaynak / ikili ve kılavuz bölümlerini bulur.
Örneğin :
$ whereis php
php: /usr/bin/php /usr/share/php /usr/share/man/man1/php.1.gz
yani, "php" çalıştırılabilir ve diğer bazı şeyler (man sayfaları gibi).
ve hangisi :
Mevcut ortamda çalıştırılacak olan dosyaların yol adlarını döndüren
Örneğin :
$ which php
/usr/bin/php
yani, sadece "php" çalıştırılabilir.
hangi ortam değişkeni PATH tarafından belirtilen dizinlerde yürütülebilir arayın. Ve tespit edilirse, bu yürütülebilir dosyanın tam adı yazdırılacaktır.
$ hangi ls
/ bin / ls
$ olan ifconfig
$ # Çıktı yok, çünkü ifconfig yalnızca kök dizininde PATH var.
nerede sistem tarafından otomatik olarak oluşturulan bir veritabanı kullanarak çalıştırılabilir dosyaları, kaynak dosyaları ve manuel sayfaları arar.
$ daha
az: / bin / az / usr / bin / az / usr / bin / X11 / az / usr / share/man/man1/less.1.gz
Ama görünüyor ki whereis ve yerini aynı veritabanını kullanmayın. Bir yazılım kurduğumda ve daha sonra nerede bu ve bu yazılımı aramak için hemen yerini bulmak için kullanılır . Sonuç olmasıdır whereis iken bu yazılım ile ilgili bazı dosyaları bulabildiğim yerini yapamadı. Gerçekten farklı veritabanı kullanıyorlar mı? Veri tabanı nasıl çalışır? - Peki, bilgin olmayı reddetmeye ne dersin? :)