bash - Git-bash - 排序列表后将文件保存到自身中
问题描述
该文件word-count.txt
包含以下文本:
10
2
19
22
6
为什么键入命令会
sort -n word-count.txt > word-count.txt
擦除文件的内存?我知道还有其他方法可以将排序的数字列表保存到文件中,但是为什么当我将其保存到包含数字的文件中时,突然没有数据了?
解决方案
因为当您使用>
将命令的输出重定向到文件时,它会重新创建文件,这意味着其中不再有任何东西可以首先排序。
如果您想这样做,您必须先创建一个临时文件,然后将其重命名为原始文件:
sort word-count.txt > wc_temp.txt && mv wc_temp.txt word-count.txt
推荐阅读
- node.js - 可以在我的 nodejs 服务器上为客户端使用 Firebase sdk 库吗?
- swift - 由于处理程序而调用了两次函数,如何修复它以便只调用一次?
- sql - 为什么这个 SQL 查询有效,而另一个却没有?
- c - 在单行代码中对单个变量进行多次赋值
- r - 如何查找和绘制多个短语的频率总计?
- python-3.x - 有没有办法通过 youtube API 上的 viewCount 来搜索视频?
- specifications - 如何在 dafny 中编写将 char 数组转换为整数的方法的规范?
- postgresql - 为 ASP.NET Core 5.0 - EF Core 5.0 Web App 配置 PostgreSQL 连接字符串以在 MS 或 Linux 云上运行?
- python - 如何在 Python 中正确编写 .onclick()?
- sqlite - 如何 Brew 安装 SQLite3 FTS5 扩展?