我试图做以下事情。
当我找到一个“未定义”的模式时,我试图将第1列放入,例如:
我的file.txt文件包含
192.168.1.1, Paul
192.168.2.2, undefined
这里是“未定义”,然后将其替换为“未定义”行中的第一列。 (192.168.2.2)
192.168.1.1, Paul
192.168.2.2, 192.168.2.2
有人能帮助我吗?
答案 0 :(得分:1)
使用 awk
$ awk -F", " '$2~/undefined/{ print $1 FS $1; next}1' file
192.168.1.1, Paul
192.168.2.2, 192.168.2.2
答案 1 :(得分:0)
您可以使用sed
:
sed 's/\(.*\), undefined$/\1, \1/' file.txt
或
sed -r 's/(.*), undefined$/\1, \1/' file.txt
答案 2 :(得分:0)
此行适用于您的示例,无论分隔符是,
还是,(space)
awk -F, '1+sub(/undefined$/,$1)' file