当运行在终端下面的命令,将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