爲什麼回聲不退出
回答
它不會等待您在完成前按下輸入。該命令立即結束,但其輸出在下一個shell提示符後打印。它看起來像:
[email protected]:~$ echo aaa > >(echo $(cat))
[email protected]:~$ aaa
這是因爲shell不會在進程替換等待命令完成,它只是等待echo
命令來完成。因此,只要echo
完成,打印下一個提示,然後echo $(cat)
異步運行並打印其輸出。
如果您在此時鍵入另一個命令,它將起作用。它看起來很奇怪,因爲輸出是在提示後打印的。只需按輸入如果您想在自己的行上提供新提示。
$(cat)
是一樣的
`cat`
命令。它運行cat
並擴展到它的輸出。
但不帶任何參數cat
(實際上/bin/cat
,見cat(1))正在讀標準輸入並將其複製到標準輸出直到文件結尾。
所以你的shell正在運行,所以正在等待你的輸入。
按照特定順序,外殼爲expanding。
進程替換意味着它應該從'echo aaa'獲得它的輸入。 – Barmar
well'echo aaa >>(echo $(cat))'這個工作在我的ubuntu 16.04中沒有任何問題?,它打印aaa。想知道爲什麼? – LethalProgrammer
我認爲這個問題是爲什麼它正在等待輸入,並且在打印後不立即退出... - 也出於某種原因,它執行給定的輸入,嘗試:echo -e「aaa」>>(echo $(cat) )',輸入'ls/tmp',輸入.... – urban
- 1. 爲什麼numpy.random.choice和numpy.full()不會退出
- 2. 爲什麼不能退出此代碼?
- 3. 爲什麼不是getchar退出?
- 4. 爲什麼不會pygame退出?
- 5. 爲什麼epmd進程不會退出?
- 6. 爲什麼不會退出while循環?
- 7. 爲什麼Windows.Media.VisualTreeHelper.GetChild(...)退出子?
- 8. 爲什麼我的退出
- 9. 爲什麼程序退出?
- 10. 爲什麼textFieldShouldReturn不會自動退出並返回true?
- 11. 爲什麼返回不能在Java中退出函數?
- 12. 爲什麼print(「\ 0007」)不發出嗶聲?
- 13. 爲什麼我的PHP回聲輸出不如預期?
- 14. 爲什麼'os.system'退出代碼爲1?
- 15. 爲什麼有些人在出錯時退出-1而不是退出1?
- 16. 什麼輸出將回聲>產生?
- 17. 爲什麼不回聲「Hello World!」聲明按預期工作?
- 18. 爲什麼WIFEXITED在子進程退出後返回false?
- 19. 爲什麼JVM需要退出?
- 20. 爲什麼在SIGKILL上立即退出?
- 21. 爲什麼Rails控制檯退出'n'?
- 22. 爲什麼tcl期望意外退出?
- 23. Facebook API退出工作。爲什麼?
- 24. 爲什麼我的for循環退出?
- 25. 爲什麼要等待退出?
- 26. 程序爲什麼退出主循環?
- 27. tcl exec with cvs upd:爲什麼退出?
- 28. Rails S - 退出並不能找出爲什麼
- 29. J中退出(不退出'')是什麼意思?
- 30. 爲什麼輸出不能返回值?
echo aaa - 應打印aaa,然後退出 –
@ArvindDhakad但它重定向到進程替換。 – Barmar