[英]Adding a new line to the end of a file using sed
我需要在文件末尾添加一个新行。 但是当我在 MacOS 上运行 sed 命令时出现错误。
我运行的命令sed -i'' -e '$a\wrapper{gradleVersion='5.5'}' build.gradle
我得到的错误: sed: 1: "$a\wrapper{gradleVersio...": extra characters after \ at the end of a command
最简单的答案:不要使用sed
echo "wrapper{gradleVersion='5.5'}" >> build.gradle
很简单吧?
如果您想忽略我的建议并继续使用sed
,请完成@shellter 评论:
在 MacOS sed 上,您需要在a
命令时在要添加的文本之前添加换行符。
MacOS sed 默认情况下不会在您要添加的文本后添加换行符,并且因为您希望文件保持 POSIX 标准,所以您需要添加它
你可以做:
sed -i '' -e '$a\
<text to add>
' <file>
$
和\
,这样使用起来特别烦人。尝试这个:
sed -i '' "\$a\\
wrapper{gradleVersion='5.5'}
" build.gradle
在 gnu-sed 上(使用brew brew install gnu-sed
),您可以:
gsed -i "\$a wrapper{gradleVersion='5.5'}" build.gradle
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.