一条命令实现追加或创建文件?

7
非常简单的任务:使用shell抓取输出并将其重定向到文件中。
现在,如果文件不存在,我需要创建它,如果存在,则需要追加数据。
如果我使用“output > file.txt”,每次访问时都会覆盖数据,这不是我想要的。
如果我使用“output >> file.txt”,我会得到一个错误,因为shell试图在需要先创建它的时候就访问该文件(它还不存在)。
有没有一种方法可以在一行中说出来,如果文件不存在,则创建它,并追加数据或仅在文件已经存在时追加?
我可以使用if-else来实现这一点(如果文件存在则使用>>,否则使用>),但如果有更简单的方法,我希望避免让我的代码变得复杂。

8
请使用 >> 符号。如果文件不存在,将自动创建该文件。 - devnull
1个回答

10
在bash中创建或附加文件,可以使用>>
echo "sample text" >> sample_file
echo "append text" >> sample_file

1
cat "sample_file" >> "sample_file2" 将“sample_file”文件内容添加到“sample_file2”文件的末尾 - user3442743

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接