我想将排序方法的结果放入一个数组中,其中每个单元格都包含一个单词。我尝试了此代码,但仅打印了 $file 的一部分并且未对其进行排序:
#!/bin/bash
for file in `ls ${1}` ; do
if [[ ! ($file = *.user) ]] ; then
continue
fi
arr=(`sort -nrk4 $file`)
echo ${arr[*]}
done
为什么这不起作用?我怎样才能做到这一点?
数据文件:
name1 01/01/1994 a 0
name2 01/01/1994 b 5
name3 01/01/1994 c 2
如果我只运行排序行(sort -nrk4 $file),这就是打印的内容:
name2 01/01/1994 b 5
name3 01/01/1994 c 2
name1 01/01/1994 a 0
当我运行上面的 2 行时,这就是它的打印内容:
name1 01/01/1994 a 0