我正在尝试在AIX上使用以下命令从文件中删除回车符(\r
),但它也删除了我的最后一行。有什么建议吗?
sed -e 's/\r\n/\n/g' ./excprule > ./excprule.tst
命令序列:
dev1:> sed -e 's/\r\n/\n/g' ./test_file > ./test_file.tst dev1:> diff test_file.tst test_file diff: 0653-827 Missing newline at the end of file test_file. 26a27 > Trailer 25
编辑:通过对perl执行相同的操作找到了解决方法,但想知道为什么这不起作用。
答案 0 :(得分:1)
如果你在AIX中使用dos2unix,你也可以使用它,使用sed,
sed '$!{:a;N;s/\r\n/\n/;ta}' file
每当处理当前行时,就会删除换行符(参见手册页),这样你就不会真正找到\r\n
。