【发布时间】:2013-11-03 05:45:10
【问题描述】:
我有一个类似的ini 文件
[test]
foo=bar
如果我们将此ini 文件称为test1.ini
如何将foo 的值更改为foobarbaz,例如使用shell script。
我尝试了以下方法,但它对我不起作用。我没有在 ini 文件中看到更新的更改。怎么写?
sed "/^foo=/s/=.*/=foobarbaz/" < test1.ini
你还有什么建议
【问题讨论】:
-
假设你的意思是你想要
foo=foobarbaz而不是foobarbaz=bar,你的代码在 Windows、mingw (MSYS)、bash 下对我有用。引用依赖于 shell;尝试在sed字符串周围使用单引号 (') 而不是双引号 (")。 -
使用
-i选项。sed -i "/^foo=/s/=.*/=foobarbaz/" test1.ini(注意重定向<已从命令中删除)。