當運行在終端下面的命令,將AWK的結果到一個數組
awk /984/ $files | awk -F, '{OFS=",";print $1,$4,$17}'
其中,
files=`ls`
我得到這樣的輸出:
2013/08/18 12:51:37,11,724
2013/08/18 12:48:02,227,84769
我想創建一個腳本,運行該命令和以上的結果分配給這樣的陣列:(單獨的行作爲單獨的元件)
array[0] = 2013/08/18 12:51:37,11,724
array[1] = 2013/08/18 12:48:02,227,84769
BUT,
既不,
result=($(awk /string/ $files | awk -F, '{OFS=",";print $1,$4,$17}'))
也不,
result2=`awk /string/ $files | awk -F, '{OFS=",";print $1,$4,$17}'`
滿足我的目的。
如何獲得像我指定的數組?
你應該使用引號像這樣'的awk「/串/」「$文件「並將文件的讀取改爲'files = $(ls)'。 result2是錯誤的,因爲它只評估命令,需要使用外部'()'來存儲數組。 – Jotne
將引號添加到'$ files'可能會給出錯誤的結果,所以請忽略它。 – Jotne