我想用(GNU)sed做一个简单的搜索和替换.问题是我正在寻找一个特殊角色,这可能是我失败的原因.
输入是:
^A9=139^A35=V^A34=9^A49=xxxx^A52=20140527-06:18:43.759^A5
Run Code Online (Sandbox Code Playgroud)
我想,以取代^A用;.我用了:
sed -i '/s/^A/;/g' file.log
Run Code Online (Sandbox Code Playgroud)
但我没有得到任何东西.
你的命令应该是,
sed -i 's/\^A/;/g' file
Run Code Online (Sandbox Code Playgroud)
你试过的命令,
sed -i '/s/^A/;/g' file.log
| |
| |______________You have to escape this special character. Because in general(regex) it means the starting point.
[No need to use `/` before s]
Run Code Online (Sandbox Code Playgroud)
例:
$ sed 's/\^A/;/g' file
;9=139;35=V;34=9;49=xxxx;52=20140527-06:18:43.759;5
Run Code Online (Sandbox Code Playgroud)