我想使用awksed搜索并替换文件列中的null和点。

该文件的内容是:

02-01-12 28.46
02-02-12 27.15
02-03-12
02-04-12 27.36
02-05-12 47.57
02-06-12 27.01
02-07-12 27.41
02-08-12 27.27
02-09-12 27.39
02-10-12 .
02-11-12 27.44
02-12-12 49.93
02-13-12 26.99
02-14-12 27.47
02-15-12 27.21
02-16-12 27.48
02-17-12 27.66
02-18-12 27.15
02-19-12 51.74
02-20-12 27.37

点和null值可以出现在文件的任何行中,我想用上面的值替换null和点,例如,
02-01-12 28.46
02-02-12 27.15
02-03-12 27.15     ****** replace with the above value
02-04-12 27.36
02-05-12 47.57
02-06-12 27.01
02-07-12 27.41
02-08-12 27.27
02-09-12 27.39
02-10-12 27.39     ****** replace with the above value
02-11-12 27.44
02-12-12 49.93
02-13-12 26.99
02-14-12 27.47
02-15-12 27.21
02-16-12 27.48
02-17-12 27.66
02-18-12 27.15
02-19-12 51.74
02-20-12 27.37

最佳答案

这可能对您有用(GNU sed):

 sed -i '$!N;s/^\(.\{9\}\(.*\)\n.\{9\}\)\.\?$/\1\2/;P;D' file

关于linux - 搜索并替换文件列中的null和点,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10823147/

10-11 22:54
查看更多