我正在使用 bowl 脚本对 ubuntu 上的现有文件运行排序脚本:
sort -r -k 2 -o mayflies.txt
但终端挂起并且不显示任何内容,但它可以在没有 -o 的情况下工作,但我需要在文件中而不是在屏幕上进行排序
答案1
您没有提供任何将sort
要执行操作的输入文件,这就是终端等待 STDIN 上的输入的原因。这是因为,如果您没有提供任何输入文件,终端sort
将从 STDIN 获取输入。
您需要的是,例如如果输入文件名是foo.txt
:
sort -r -k 2 -o mayflies.txt foo.txt
这会将排序后的输出保存foo.txt
到 中mayflies.txt
。如果省略该-o mayflies.txt
部分,排序后的输出将显示在屏幕上 (STDOUT)。
另一方面,如果您的输入和输出文件名应该是同一个文件,即如果您想将输出保存到同一个文件:
sort -r -k 2 -o mayflies.txt mayflies.txt