如果我在终端并且我将一些基本字符串写入文件,是否有办法使用echo连续附加到该文件?
例如,echo'hello'>文件会将'hello'放入该文件中,但如果我现在要将'world'追加到文件中呢?我知道,如果我回应'世界',它将覆盖我写入文件的第一个字符串。我可以在bash中使用任何+ =运算符吗?
编辑:没关系,我可以使用>>追加。是否可以追加到同一行而不是新行?
答案 0 :(得分:3)
echo -n 'Hello' > file
echo ', World!' >> file
>>
重定向运算符表示"追加。"
此处我们使用echo
的非标准扩展程序,其中-n
告诉它不要添加新行。
如果您需要符合标准的行为,请使用printf
:
printf 'Hello' > file
printf ', World!\n' >> file
编辑:在包含感叹号!
的字符串周围使用双引号可能不适用于某些版本。它可以被解释为历史扩展令牌。使用单引号来防止这种情况。