从文本文件数据库中替换当前字符串

时间:2013-01-18 11:02:51

标签: linux bash shell ubuntu sed

从文本文件数据库格式

  

客户:HDB:价格:左:可用

     

泰德:RM4:34:197:101

bash shell脚本,

read -p $'Price: '  Price2
sed -i "s/$Customer:$HDB:$Price/$Customer:$HDB:$Price2/g" CustomerDB.txt

当我键入43时,数据库返回

  

泰德:RM4:4334:197:101

如何将其替换为43而不是34?

1 个答案:

答案 0 :(得分:0)

似乎$Price是空的。你确定它包含旧价格吗?如果要替换所有价格而不考虑旧值,可以使用

sed -i "s/$Customer:$HDB:[0-9]*/$Customer:$HDB:$Price2/g" CustomerDB.txt