<分区>
通常我可以这样做来对文本文件进行排序:
cat infile.txt | sort > outfile.out
mv outfile.out > infile.txt
我也可以循环执行:
for inp in ./*; do
fname=${inp##*/}
cat "$inp" | sort > ./"$fname".out
done
除了写一个循环之外,是否有一个行可以为终端中的所有文件执行上述操作?
<分区>
通常我可以这样做来对文本文件进行排序:
cat infile.txt | sort > outfile.out
mv outfile.out > infile.txt
我也可以循环执行:
for inp in ./*; do
fname=${inp##*/}
cat "$inp" | sort > ./"$fname".out
done
除了写一个循环之外,是否有一个行可以为终端中的所有文件执行上述操作?
最佳答案
这让我觉得这是一个荒谬的练习,因为循环没有任何问题,但你可以这样做:
ls | xargs -n 1 sh -c 'sort $1 > $1.tmp; mv $1.tmp $1' sh
关于linux - 如何对多个文件进行排序? Unix,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15339214/