Bash脚本:在文件特定行的最后一个字符处附加文本

时间:2011-05-04 21:24:53

标签: linux bash append

我试图在bash脚本的文件特定行的最后一个字符处追加一个变量。

该文件名为myfile.txt,我想要做的是在包含唯一字符串{{的文件行的最后一个字符后面追加名为VERSION的变量的内容1}}。

也就是说,如果在这一行中有以下内容:

MYVERSION

MYVERSION=0.1 然后,我希望得到以下内容:

VERSION="-custom_P1"

谢谢大家的帮助。

2 个答案:

答案 0 :(得分:3)

试试这个:

sed -i "/^MYVERSION=/ s/\$/$VERSION/" myfile.txt

这个想法是它找到一个以MYVERSION =开头的行,然后用$ VERSION环境变量的内容替换该行的结尾。

编辑:最初我不确定第一个$是否需要被转义,但是@ sehe的评论和它的支持者确信它确实存在。

答案 1 :(得分:0)

尝试

sed -e "s/^MYVERSION=/MYVERSION=.*$/&${VERSION}/g" < myfile.txt

该命令将VERSION的值附加到带有'MYVERSION ='

的行