小编Bas*_*sil的帖子

如何用 sed 替换换行符?

我有需要替换的带有空格(包括换行符)的文本。我想用sed,但AIX似乎并不支持答案sed,我发现换行的问题。我使用的 bash 版本是“GNU bash,版本 3.00.16(1)-release (powerpc-ibm-aix5.1)”

如果我运行一个命令输出一堆文本行,如:

alias:  aliasname
                10:00:00:00:00:00:00:00
Run Code Online (Sandbox Code Playgroud)

使每行一行的最佳方法是什么?如果我使用ssh user@system command | tr '\n' ' ',它会替换两个换行符,我需要保留最后一个,否则输出会变成一行。

编辑:到目前为止我尝试过的是:

  • | sed -e ':1' -e 'N' -e '$!b1' -e 's/\n/ /g' 它替换所有换行符,将整个输出流放入一行。
  • | while read i; do printf "%s " $i; done; echo 这也替换了所有换行符
  • | tr -d '\n'and | tr -d '\n'; echo,它仍然替换所有换行符,但是 echo 在最后一个命令中添加了一个。

sed newlines

5
推荐指数
2
解决办法
3770
查看次数

标签 统计

newlines ×1

sed ×1