我有一個csv文件。目前我的腳本正在做的是:在Shell中異步執行命令
- 並行排序兩個文件。
- 第1步完成後,我正在剪切這兩個文件中的一列。
- 第2步之後,我DIFF-荷蘭國際集團這是我從步得到的文件2.
我想要做的是,當下完成步驟1我想去爲CSV的下一行並對該行執行排序命令(其中提到了根據步驟1排序的2個文件)。這意味着雖然第1行在第2步,第2行應該在第1步。我該怎麼做?我需要某種數據流水線嗎?
對不起,我感到困惑。什麼我目前做的,現在的僞代碼:
sort col1_row1 > sorted_col1_row1 &
sort col2_row1 > sorted_col2_row1 &
wait for sorts
cat sorted_col1_row1 | cut -f1-3 > cut_sorted_col1_row1 &
cat sorted_col2_row1 | cut -f1-3 > cut_sorted_col2_row1 &
wait for cat
diff cut_sorted_col1_row1 cut_sorted_col2_row1 > diff_row1
當各種各樣越過了ROW1文件,我想程序在2行跳與貓和DIFF上ROW1文件運行的執行。
「爲[一個]行執行排序命令」是什麼意思? – 2014-08-31 11:48:00
csv文件在每個行路徑中包含2個文件。在第1步中,我將並行排序兩個文件(如第1行所述)。當我進入第2步時,我希望我的程序讀取csv文件的下一行並對2個文件進行排序(在第2行中提到),同時對第1行進行第2步。 – blackmamba 2014-08-31 12:04:54
那麼,您可以運行第2步和3在後臺使用'(cmd1; cmd2;)&'subshell塊。那是你要的嗎? – pelle 2014-08-31 13:02:12