我有很多行的输出。输出的行数不一致。有没有办法可以选择最后一行以便找到并替换字符?如果不使用awk
or sed
,任何Unix
* 工具。
这是我需要修改的输入的简化示例。通常,它的长度为一到两百行并且会有所不同。我想找到最后的逗号并将其删除。
示例输入
202", # 1233eda
049", # 1022ats
194", # 109nunnz
180", # 0010204NE
113", # 10195y.it
489", # 1-420
345", # 192EelL
209", # 18tWa
145", # 18tr
137", # 1165y_SVM
561", # 1odeN
737", # 1hoer_co
816", # 10138wDUSW
954", # 1013saLN349ND
969", # 112t-2_420
114", # 1012i.fm
650", # 10zy.i
860", # 1119b.co
177", # 1.0109tz
期望的输出
202", # 1233eda
049", # 1022ats
194", # 109nunnz
180", # 0010204NE
113", # 10195y.it
489", # 1-420
345", # 192EelL
209", # 18tWa
145", # 18tr
137", # 1165y_SVM
561", # 1odeN
737", # 1hoer_co
816", # 10138wDUSW
954", # 1013saLN349ND
969", # 112t-2_420
114", # 1012i.fm
650", # 10zy.i
860", # 1119b.co
177" # 1.0109tz
与
sed
:$
s/TO_REPLACE/REMPLACEMENT/
,
使用 a
Perl
的单行代码:输出
如果这就是您对该输入所做的全部工作,那么我将使用@Gilles 发布的sed 解决方案,但由于您已经拥有
sed
脚本perl
,并且如果您实际上需要做的不止于此,这里有一种方法可以awk
通过仅缓冲 1 行: