Belgelerine göre, bash bir boru hattındaki tüm komutların devam etmeden önce bitmesini bekler
Kabuk, bir değer döndürmeden önce boru hattındaki tüm komutların sonlanmasını bekler.
Peki komut neden yes | truehemen bitiyor? yesDöngü sonsuza kadar olmamalı ve boru hattının asla geri dönmemesine neden olmalı mı ?
Ve bir alt sorgu: POSIX spesifikasyonuna göre , kabuk boru hatları ya son komut bittikten sonra geri dönmeyi seçebilir ya da tüm komutlar bitene kadar bekleyebilir. Yaygın mermilerin bu anlamda farklı davranışları var mı? yes | trueSonsuza dek dönecek mermiler var mı?
truetemelde bir {return 0;}programdır, bu yüzden sonsuza dek uzun süre çalışmasını beklemezdim.
yes | tee >(true) >/dev/nullbeklediğiniz gibi yapacak, btw,teetüm yazarlar ölene kadar devamtrueedecek , bu yüzden çıkmak onu tamamen bozmayacak.