我用Google搜索了这个命令,但没有。
grep -m 1 "\[{" xxx.txt > xxx.txt
但是我输入了这个命令,错误没有发生。 实际上,这个命令也没有结果。
请有人解释我这个命令的工作吗?
答案 0 :(得分:0)
此命令读取和写入同一文件,但不是从左到右的方式。实际上> xxx.txt
首先运行 ,在grep
命令开始读取之前清空文件。因此没有输出。您可以通过将结果存储在临时文件中,然后将该文件重命名为原始名称来解决此问题。
PS:某些命令(如sed
)有一个输出文件选项,它可以解决此问题,而不依赖于shell重定向。