我寫了兩個簡單的C程序,program1打印出一個預定義的字符串,program2接受一個字符串作爲參數並將該字符串寫入文件。在Linux下使用bash腳本將C程序的輸出重定向到另一個C程序
我想要做的是採取program1的輸出,並將其傳遞給program2。我經歷過的bash教程,我能找到的唯一解決辦法是:
program1 | program2
據說這是爲了工作,但我得到一個segmantation故障。所以我試了這個,它的工作原理。
program1 | program2 abc
正如你可以猜到這將導致包含字符串「abc」的輸出文件。 program1 | program2似乎很直接,但我想我在這裏錯過了一些東西?
安置自己的腳本,你可能需要將輸出存儲到一個變量,而不是直管。 – ProfessionalAmateur 2011-12-21 17:40:47
正如他所提到的,他的program2將字符串作爲參數,而不是STDIN。這是問題的原因。 – ArjunShankar 2011-12-21 17:43:32
是的,我修改了第二個程序,以便它從stdin中獲取字符串,並且我的原始腳本可以工作。感謝所有的答案。 – Ihateparsing 2011-12-21 18:02:12