2017-06-20 163 views
2

我想要做一个简单的sed替换,但我得到一个奇怪的结果。我只想以我的任何以.0_结尾的条件,并用替换它们。然而,出乎意料的是正在发生。它正在吃任何形式的“x0”。我需要在这里更改什么?sed替换吃不匹配的模式

$ cat test.csv 
    Ar_phi_2.5_eV_tOn_0.5_ns_tOff_20_ns_d_3.2_um_V_20_V,4586.516493 
    Ar_phi_2.5_eV_tOn_0.5_ns_tOff_20_ns_d_3.2_um_V_20.0_V,4586.516493 
$ sed -i -- 's|.0_|_|g' test.csv ; 
$ cat test.csv 
    Ar_phi_2.5_eV_tOn_0.5_ns_tOff__ns_d_3.2_um_V__V,4586.516493 
    Ar_phi_2.5_eV_tOn_0.5_ns_tOff__ns_d_3.2_um_V_20_V,4586.516493 

回答

4

尝试改变

sed -i -- 's|.0_|_|g' 

sed -i -- 's|\.0_|_|g'