对于仅包含注释(以#开头)和VARIABLE = value行的单个输入文件,是否可以替换单个变量的值(如果找到),否则,可以将对附加到文件末尾(如果找不到)?
我当前的方法是通过在第一遍中将其删除,然后在第二遍中将其添加到文件末尾的方式来工作的,但是此方法弄乱了行的顺序(也是两个不同的命令):
sed -r "/^FOOBAR=.*$/d" -i samefile &&
sed -r "$ a\FOOBAR=newvalue" -i samefile
反正有做到这一点,即。在单个sed行中保持行顺序?如果其他实用程序(awk,...)执行此操作,则将其接管sed。
newvalue
存储在变量中,它将是什么样?