我得到一个文档,字段之间用冒号分隔(:),我需要不时更改第二个字段。该文件看起来是这样的:sed:搜索并替换不同的列
name1:UhX.PPFW7$YhPMH0BISY:23490::::::
name2:1./0oV$GEs6WJpE$LHXhy:19239:0:29388:2::29302:
...
文件的第二场偶尔会发生变化,可能包含一对夫妇正则表达式字符($)和正斜杠。
我想只替换第二个字段,因为随后的数据可能在将来会有所不同。如果我:
sed -e "s~^name2:.*:~name2:aTest\$repl.ace:~g" tst
文本到第二列的右侧丢失:
name2:aTest$repl.ace:
(即, '19239:0:29388:2 :: 29302:')。有没有一种方法可以代替变化的列并保留行的其余部分?或者,可能有更好的方案来做到这一点?
嘿,那太好了。想知道这是否可能在sed。以为我可能正在看一个更复杂的命令。欣赏提示,安东尼。 –