使用shell的sed命令将匹配到的行进行整行替换

我的需求是将一个配置文件中(一个TTCN-3配置文件)的端口速率等配置进行更改。

每当端口需求变化时都要进行更改。如下图:

使用shell的sed命令将匹配到的行进行整行替换_第1张图片

以更改上图文件中的*.SerialPort1.deviceSpeed :="B9600"为例

假设我的新端口速率为B1200

new_speed=B1200
tmp_new="*.Serialort1.deviceSpeed := \"$new_speed\""
sed -i "/^*.Serialort1.deviceSpeed/c$tmp_new" SrialPort.cfg

命令解释:先知道你需要更改的端口速率(如B1200);将端口速率与原配置文件中的端口号进行连接(连接后为:*.SerialPort1.deviceSpeed :="B1200");将原配置文件中以*.SerialPort1.deviceSpeed 开头的整行替换为新的tmp_new

 

你可能感兴趣的:(shell)