我有一个包含数千行和列的文件,其中两列是IP1和IP2。 IP1始终相同192.168.100.1
* example.com,192.168.100.1,10.10.1.1,5effd70e9d99b1acf,10,63,58,42,0,21,84055280,0 example2.com,192.168.100.1,10.10.1.50,255b2l429c8f23ee,10,63,37,42,1,21,1451066297,0 example3.com,192.168.100.1,10.10.1.58,589b7a5f8677b,11,68,37,42,1,20,1451066297,0
............. *
我想用IP2的值替换IP1的值,并删除IP2的值。
我试过了:
sed -i 's/192\.168\.100\.1/$(grep 192\.168\.100\.1 file | awk -F',' '{print $2}')/' file
发生以下错误: sed:-e表达式#1,char 68:未终止的`s'命令
请帮忙。
答案 0 :(得分:0)
sed -i 's/192\.168\.100\.1,//' file
此sed
命令找到字符串“192.168.100.1”,并将其替换为空。
.
在sed命令中有特殊含义,因此需要反斜杠。有关手册页的更多信息。