【发布时间】:2014-03-04 12:13:10
【问题描述】:
在Linux上删除回车我们可以执行:
sed -i 's/\r//g' <file>
但同样的不适用于 Mac OS X。需要在前面加上 $ 之类的:
sed -i $'s/\r//' <file>
而且“g”也不需要。
为什么会这样?
【问题讨论】:
-
(假设,我没有 Mac)shell 解释/文件管理。 sed 逐行工作,通常该行由 CR 结束,而不是由 sed 占用。 Linux和mac版不考虑行尾方式相同。如果超过 1 个替换,则需要 g,但默认情况下这始终是最后一个字符。
标签: regex macos sed carriage-return