我试图用sed在文件中搜索最后一次出现。在HP-UX tac选项中不可用。KSH:sed命令来搜索并替换文件中最后一次出现的字符串
对于防爆:下面是文件中的数据,
A|2121212|666666666 | 2|01|2 |B|1111111111 |234234234 |00001148|
B|2014242|8888888888| 3|12|3 |B|22222222222 |45345345 |00001150|
C|4545456|4444444444| 4|31|4 |B|3333333333333 |4234234 |00001148|
我想:
cat $filename | sed 's/00001148/00001147/g'
它是从00001148改为00001147为00001148.
都发生我必须搜索最后一次出现的|00001148|
并用另一个数字替换。目前我的sed命令改变00001148.
匹配行是否在文件最后一行? – nu11p01n73R 2014-10-08 04:41:19
是的,我的命令在第一行和最后一行都是匹配的,并用00001147替换。但我只想在最后的匹配行中进行更改。 – Srinivas 2014-10-08 04:46:21
请注意,使用'cat'完全是UUOC - 无用的使用'cat'。 'sed'完全可以读取文件。 – 2014-10-08 05:41:48