微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

shell – 如何删除多个文件的尾部空白?

有没有任何工具/ UNIX单个内容,它将删除多个文件的结尾空白的就地。

例如。一个可以与find结合使用。

你要
sed --in-place 's/[[:space:]]\+$//' file

这将删除所有POSIX标准定义的空格字符,包括垂直制表符和换页符。此外,它将只做一个替换,如果尾部空白实际上存在,不像使用零或更多匹配器(*)的其他答案。

– in-place只是-i的长整型。我喜欢在脚本中使用长形式,因为它倾向于更多地说明标志实际上做了什么。

它可以很容易地集成发现像这样:

find . -type f -name '*.txt' -exec sed --in-place 's/[[:space:]]\+$//' {} \+

如果你是在Mac上

正如评论中所指出的,如果您没有安装gnu工具,上述方法不起作用。如果是这种情况,您可以使用以下:

find . -iname '*.txt' -type f -exec sed -i '' 's/[[:space:]]\{1,\}$//' {} \+

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐