【问题标题】:A shell script to to change a value in a file with a parameter用于更改带有参数的文件中的值的 shell 脚本
【发布时间】:2015-09-19 04:07:15
【问题描述】:

我是一名 etl 开发人员,对 shell 脚本非常陌生,

我的文件是 param.prm

[3_go:wf_test:s_test]

$Dbconnection=abcd

$Dbstring=qwert

每次我运行脚本时,我都需要一个 shell 脚本来读取上述文件并使用我传递的变量动态更改 $dbconnection(现在是 abcd)的值。我该怎么做?

【问题讨论】:

标签: shell sh informatica-powercenter


【解决方案1】:
$ sed 's/\($Dbconnection=\).*/\1NewValue/' param.prm 
[3_go:wf_test:s_test]

$Dbconnection=NewValue

$Dbstring=qwert

要就地更改文件,请使用-i 选项。对于 GNU sed:

sed -i 's/\($Dbconnection=\).*/\1NewValue/' param.prm 

对于 BSD (OSX) sed:

sed -i "" 's/\($Dbconnection=\).*/\1NewValue/' param.prm 

【讨论】:

  • 感谢您的回复.....文件中的第一行是 [3_go:wf_test:s_test]...所以这个命令会跳过这行转到第二行吗?...谢谢
  • @user2722449 当前版本将保持该行不变。你想删除它吗?
猜你喜欢
  • 1970-01-01
  • 2018-11-18
  • 2018-03-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-06-04
  • 2012-11-15
  • 1970-01-01
相关资源
最近更新 更多