我尝试用sed在文件末尾添加一行(/root/test.conf)。我使用FreeBSD,当我尝试添加一个简单的行时,我总会得到几个错误:
文件是这样的:
#Test
firstLine
secondLine
!p.p
*.*
我想添加这样的内容:
(return \n)
!word
other (5 tab between "other" and "/usr/local") /usr/local
如果sed无法实现,还有其他选择吗?
谢谢!
答案 0 :(得分:1)
听起来你根本不需要使用sed,也许只有cat
使用heredoc:
cat >>test.conf <<EOF
whatever you want here
more stuff
EOF
>>
在&#34中打开test.conf
;追加&#34;模式,因此行被添加到文件的底部,<<EOF
是一个heredoc,允许您通过标准输入将行传递给cat。
要在交互式终端中添加文字标签,您可以使用 Ctrl - v ,然后使用 Tab 。
答案 1 :(得分:1)
您不需要任何特殊工具(如sed)在文件末尾添加一些行。
$ echo "This is last line" >>file
#or
$ printf "This is last line\n" >>file
在几乎任何平台上都能正常工作。您可能需要转义特殊字符,或将它们用单引号或双引号括起来。