使用sed删除文本文件中的所有前导后续空格

使用sed删除文本文件中的所有前导后续空格,第1张

概述使用sed删除文本文件中的所有前导/后续空格

文件1:

hello world

如何使用sed删除这个文件中的前/后空格 – 使用一个命令(没有中间文件) ?

我目前得到:

sed -e 's/^[ t]*//' a > b

领先的空间。

linux:计算文件中的空格和其他字符

如何从文本文件生成制表符分隔的文件?

CreateCaret颜色错了?

linux上的QPainter :: drawText性能不佳

拆分包含pipe道字符的string

sed 's/ *$//' b > c

而这为尾随空间。

Awk:删除行中最后一个空格之后的文本

阅读文本文件的完整内容后,fread()失败

将文本从nano编辑器复制到shell

根据内容将input分成多个输出?

Vonnegutian命令:用句点*正确replace分号*

你几乎明白了:

sed -e 's/^[ t]*//;s/[ t]*$//' a > c

此外在sed一些风格,也有内联编辑选项:

sed -i -e 's/^[ t]*//;s/[ t]*$//' a

更简单的方法,使用awk

awk '{$1=$1}1' file

要么

awk '{gsub(/^ +| +$/,"")}1' file

perl -lape 's/^s+|s+$//g'

老实说,我知道perl是最好的,所以我发现perl -lape比sed -e更容易使用。

另外,要回答原来的问题,你可以让sed执行如下的多个 *** 作:

sed -e 's/something/something else/' -e 's/another substitution/another replacement/'

显然你也可以把两个替换放在一个字符串中,并用分号分隔,如另一个答案所示。

请注意,在不使用中间文件的情况下,将多个过滤器连续应用于输入文件,解决方法是使用管道:

sed -e 's/^[ t]*//' a | sed -e 's/ *$//' > c

显然这里不需要它们,因为sed的调用是足够的,但是如果第二个sed命令是不同的,像uniq或者sort,那么这个模式是正确的。

总结

以上是内存溢出为你收集整理的使用sed删除文本文件中的所有前导/后续空格全部内容,希望文章能够帮你解决使用sed删除文本文件中的所有前导/后续空格所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1159092.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-01
下一篇 2022-06-01

发表评论

登录后才能评论

评论列表(0条)

保存