如何将输出附加到文件?
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/5342832/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
How to append the output to a file?
提问by Tom Brito
How can I do something like command > file
in a way that it appends to the file, instead of overwriting?
我怎样才能command > file
以将其附加到文件而不是覆盖的方式进行操作?
采纳答案by Mike Lewis
Use >>
to append:
使用>>
附加:
command >> file
回答by EdvardM
Yeah.
是的。
command >> file
to redirect just stdoutof command
.
command >> file
只是重定向标准输出的command
。
command >> file 2>&1
to redirect stdoutand stderrto the file (works in bash, zsh)
command >> file 2>&1
将stdout和stderr重定向到文件(在 bash、zsh 中工作)
And if you need to use sudo
, remember that just
如果您需要使用sudo
,请记住
sudo command >> /file/requiring/sudo/privileges
does not work, as privilege elevation applies to command
but not shell redirection part. However, simply using
tee
solves the problem:
sudo command >> /file/requiring/sudo/privileges
不起作用,因为权限提升适用于command
但不适用于 shell 重定向部分。但是,只需使用即可
tee
解决问题:
command | sudo tee -a /file/requiring/sudo/privileges
command | sudo tee -a /file/requiring/sudo/privileges
回答by user3680358
you can append the file with >> sign. It insert the contents at the last of the file which we are using.e.g if file let its name is myfile contains xyz then cat >> myfile abc ctrl d
您可以使用 >> 符号附加文件。它在我们正在使用的文件的最后插入内容。例如,如果文件让其名称为 myfile 包含 xyz 然后 cat >> myfile abc ctrl d
after the above process the myfile contains xyzabc.
在上述过程之后,myfile 包含 xyzabc。