linux下如何替换文件中的换行符
导读:本文共736字符,通常情况下阅读需要2分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要: 之前在linux系统执行以下命令:ls file |xargs sed -i 's/\n//g'然而却发现没有任何效果,百度之后发现sed是按行处理文本数据的,每次处理一行数据后,都会在行尾自动添加trailing newline...之前在linux系统执行以下命令:ls file |xargs sed -i 's/\n//g&... ...
目录
(为您整理了一些要点),点击可以直达。之前在linux系统执行以下命令:
ls file |xargs sed -i 's/\n//g'
然而却发现没有任何效果,百度之后发现sed是按行处理文本数据的,每次处理一行数据后,都会在行尾自动添加trailing newline。
如果非要使用sed命令,实现替换file文本内容的换行符为空的话,那么就要了解sed的分支条件命令,以及了解sed的pattern space模式空间和hold space保持空间。即,连续两行执行一次sed命令,这样就可以把前一行的\n替换完成。
最终实现命令如下例所示:
sed ":a;N;s/\n//g;ta" a.txt
N是把下一行加入到当前的hold space模式空间里,使之进行后续处理,最后sed会默认打印hold space模式空间里的内容。也就是说,sed是可以处理多行数据的。
:a和ta是配套使用,实现跳转功能。t是test测试的意思。
linux下如何替换文件中的换行符的详细内容,希望对您有所帮助,信息来源于网络。