gpt4 book ai didi

linux - 使用linux对多个文件进行排序

转载 作者:太空宇宙 更新时间:2023-11-04 03:38:00 25 4
gpt4 key购买 nike

有没有办法可以在 Linux 上同时对多个文件运行以下命令?

$ sort -nr -k 2 file1 > file2

最佳答案

我假设您有许多输入文件,并且您想要为每个文件创建一个排序版本。我会使用类似的东西来做到这一点

for f in file*
do
sort $f > $f.sort
done

现在,这有一个小问题,如果再次运行它,不仅会再次对所有文件进行排序,还会创建 file1.sort.sort 与 file1.sort 一起使用。有多种方法可以解决这个问题。我们可以通过创建名称不以“file”开头的排序文件来解决第二个问题:

for f in file*
do
sort $f > sorted.$f
done

但这有点奇怪,我不希望文件这样命名。或者,我们可以使用稍微更聪明的脚本来检查文件是否需要排序,并避免这两个问题:

for f in file*
do
if expr $f : '.*\.sort' > /dev/null
then
: no need to sort
elif test -e $f.sort
then
: already sorted
else
sort -nr -k 2 $f > $f.sort
fi
done

关于linux - 使用linux对多个文件进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30924294/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com