Sed没有从文件中删除换行符

时间:2013-01-08 05:09:25

标签: linux sed

  

可能重复:
  SED: How can I replace a newline (\n)?

我有新行的文件。我正在尝试这个

sed -re 's/\n//' sample1.txt并且它无效

它显示带有换行符的输出而不是删除它们。

2 个答案:

答案 0 :(得分:1)

sed拆分它在换行符处接收的输入并在运行sed脚本之前将其删除,即脚本永远不会看到换行符。改用tr:

tr -d '\n'

或者,如果您坚持使用sed,请使用 Guru的循环解决方案,使用\n命令重新插入N

答案 1 :(得分:-2)

使用双引号:

sed -e "s/\n//" sample1.txt

如果您打算尝试加入文件中的所有行:

sed -e :a  -e 'N;s/\n//;ta'  sample1.txt