我有一個bash代碼(Mybash1.sh
),我的結果需要通過 另一個bash的代碼(Mybash2.sh
)包含的Python運行Python和STDIN從猛砸
這裏是代碼。 Mybash1.sh
#! /bin/bash
# Mybash1.sh
cut -f1,3 input_file.txt | sort | ./Mybash2.sh
Mybash2.sh是這樣的:
#! /bin/bash
#Mybash2.sh
python mycode.py foo.txt <("[email protected]") > output.txt
# do something for output.txt
我的問題是, 「output.txt的」 在Mybash2.sh
不含結果。 在Mybash2.sh
中有沒有正確的方法來執行Python?
請注意,mycode.py
將工作,如果我運行它在Mybash1.sh
給出的中間臨時 文件。但我想避免使用它,因爲在Mybash1.sh
之內的很多情況下我都會撥打Mybash2.sh
。
的mycode.py
摘錄如下:
if __name__ == "__main__":
import sys, os, fileinput
progName = os.path.basename(sys.argv[0])
if len(sys.argv) != 3:
sys.exit('Usage: ' + progName + ' file1 file2')
file1 = fileinput.input(sys.argv[1])
file2 = fileinput.input(sys.argv[2])
# do something for file1 and file2
file1.close()
file2.close()