回显附加文本

1 bash terminal echo

如果我在终端中将一些基本字符串写入文件,是否有办法使用 echo 不断附加到该文件?

例如, echo 'hello' > file 会将 'hello' 放入该文件中,但如果我现在想将 'world' 附加到文件中怎么办?我知道如果我 echo 'world',它会覆盖我写入文件的第一个字符串。我可以在 bash 中使用 += 运算符吗?

编辑:没关系,我可以使用 >> 附加。是否可以追加到同一行而不是新行?

Con*_* Ma 9

echo -n 'Hello' > file
echo ', World!' >> file
Run Code Online (Sandbox Code Playgroud)

重定向>>运算符的意思是“追加”。

这里我们使用 的非标准扩展echo,其中-n告诉它不要附加新行。

如果您想要符合标准的行为,请使用printf

printf 'Hello' > file
printf ', World!\n' >> file
Run Code Online (Sandbox Code Playgroud)

编辑:在包含感叹号的字符串周围使用双引号!可能不适用于某些版本。它可以被解释为历史扩展令牌。使用单引号可以防止这种情况。