linux - 如何就地对文件进行排序?

当我们使用 sort file 命令时, 该文件以排序方式显示其内容。如果我不想在 stdout 上获得任何输出,而是在输入文件中获得任何输出怎么办?

最佳答案

您可以使用排序的-o--output=FILE选项来表示相同的输入输出文件:

sort -o file file

不重复文件名(使用 bash brace expansion )

sort -o file{,}

⚠️ 重要提示:一个常见的错误是尝试将输出重定向到同一个输入文件 (例如排序文件>文件)。这不起作用,因为 shell 正在进行重定向(不是 sort(1) 程序)并且输入文件(也作为输出)将在给出 sort( 1) 安排阅读的机会。

https://stackoverflow.com/questions/29244351/

相关文章:

linux - sh : 0: getcwd() failed: No such file or d

python - 如何从 python 代码调用 shell 脚本?

python - 如何使用 python/numpy 计算百分位数?

linux - 确定 yum 软件包安装到的路径

linux - 如何在bash中创建仅包含十六进制字符而不包含空格的文件的十六进制转储?

python - 如何在 Django 中的 CharField 上添加占位符?

python - `ValueError: cannot reindex from a duplic

linux - 如何永久清除 linux/ubuntu 终端或 bash 中的所有历史记录?

linux - 如何在 Linux 上获得整体 CPU 使用率(例如 57%)

python - 使用 Python 向 RESTful API 发出请求