删除隐藏的 $ 字符 MAC OS X 文本文件

Removing hidden $ characters MAC OS X text file

我需要从文本文件中删除重复的换行符。我可以根据需要使用 sed 修改文件,但是在匹配换行符时我遇到了问题。当我使用启用了“:set list”的 vi 查看文件时,我看到如下内容:

No Active Message Discriminator.$
$
$
$
$
No Inactive Message Discriminator.$
$

'$'代表换行符。不使用 ':set list' 查看的相同文件如下所示。

No Active Message Discriminator.




No Inactive Message Discriminator.

感谢您提供有关删除重复换行符的任何帮助。我在 MAC OS X 工作。我已经搜索过(也许我遗漏了什么)但似乎没有直接解决“$”字符的答案。

你可以尝试 "squeezing" 换行 tr:

printf "a\n\n\nb\n"
a


b

然后挤压:

printf "a\n\n\nb\n" | tr -s '\n'
a
b

或者如果您有文件:

tr -s '\n' < file