Bash Manual diyor (manpage, benim vurgu):
Bash harici bir komut çağırdığında, değişken komutun
$_tam yol adına ayarlanır ve ortamındaki bu komuta iletilir.
Ve ( Özel Parametreler ):
_(
$_, alt çizgi.) Kabuk başlangıcında, ortam veya bağımsız değişken listesinde geçirildiği sırada yürütülen kabuk veya kabuk komut dosyasını çağırmak için kullanılan mutlak yol adına ayarlayın. Daha sonra, genişletmeden sonra önceki komutun son bağımsız değişkenine genişler. Ayrıca, bu komuta aktarılan ortama yürütülen ve yerleştirilen her komutu çağırmak için kullanılan tam yol adına ayarlanır. Postaları kontrol ederken, bu parametre posta dosyasının adını tutar.
Bir bash kabuğunda koşuyorum:
$ bash $ export | grep '_='El kitabına göre
_, yeni bash kabuğunun ortam değişkeni olmalıdır.exportyeni bash kabuğunun tüm ortam değişkenlerini çıkarması gerekiyor, ancak çıkmıyor_. Bu yüzden_yeni bash kabuğunun ortam değişkeni olup olmadığını merak ediyorum.Aslında herhangi bir bash kabuğunda aynı şey olur
$ export | grep '_='hiçbir şey çıkarmaz. Acaba
_hiç bir kabuk kabuğunun ortam değişkeni var mı?Karşılaştırma için:
$ dash $ export | grep '_=' export _='/bin/dash'
Yayımım Mike'ın yorumu ve Stephane'nin cevabından ilham alıyor .
bash -c export | grep _=(Bash itibaren) olacaktır ebeveyn kabuk çağrılan göstermek basholsa komutu $_ebeveyn de düzdür.
exportbir yerleşiktir, ancak kullanırsanızprintenv _size nasıl çağrıldığını gösterecektir:/usr/bin/printenvbu sistemde.