我已经看到了我们可以在shell中使用>>的地方。 在shell中使用>和>>有什么区别?
>>
用于追加,而>
用于写入(替换)。
如果文件存在, >>
将追加到文件末尾, >
将覆盖它。
否则将创建它。
如果您重定向到的文件已经存在,那么是有区别的:
>
截断(即替换)一个现有的文件。
>>
追加到现有的文件。
'>>'将允许您将数据追加到文件,其中'>'将覆盖它。 例如:
# cat test test file # echo test > test # cat test test # echo file >> test # cat test test file
当你使用>时,如:
$ echo "this is a test" > output.txt
>运算符将完全覆盖文件output.txt中的任何内容(如果存在)。 如果文件不存在,将会创建内容为“这是一个测试”。
这个用法:
$ echo "this is a test" >> output.txt
将output.txt中的任何内容(称为“附加”)添加到“这是测试”链接。 如果该文件不存在,则会被创建,文本将被添加。
在这里添加更多知识。
我们也可以使用tee
命令来执行相同的操作:
cat newfile | tee filename - rewrites/replaces the file with new content in filename cat newfile | tee -a filename - appends to the existing content of the file in filename file