如何在 Linux 上删除文件中的尾随空格如何在 Linux 上删除文件中的尾随空格如何在 Linux 上删除文件中的尾随空格如何在 Linux 上删除文件中的尾随空格
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

如何在 Linux 上删除文件中的尾随空格

问题:我有一个文本文件,为了格式化目的,我需要删除每行中的所有尾随空格(例如空格和制表符)。有没有一个快速、简单的 Linux 命令行工具可以用来实现这个目的?

当您为程序编写代码时,您必须了解需要遵循的标准编码风格。例如,“尾随空白”通常被认为是邪恶的,因为当它们进入代码存储库进行修订控制时,它们可能会导致很多问题和混乱(例如“错误差异”)。许多 IDE 和文本编辑器都能够突出显示并自动修剪每行末尾的尾随空格。

以下是在 Linux 命令行环境中删除尾随空格的几种方法。

方法一:sed

删除不需要的空格的简单命令行方法是通过 sed。

以下命令删除 input.java 中每行末尾的所有空格和制表符。


$ sed -i 's/[[:space:]]*$//' input.java

如果有多个文件需要删除尾随空格,您可以结合使用 find 和 sed 命令。例如,以下命令删除在当前目录及其所有子目录中递归找到的所有 *.java 文件中的尾随空格。


$ find . -name "*.java" -type f -print0 | xargs -0 sed -i 's/[[:space:]]*$//'

方法二:Vim

Vim 文本编辑器还能够突出显示和修剪文件中的空格。

要突出显示文件中的所有尾随空格,请使用 Vim 编辑器打开该文件,并通过在 Vim 命令行模式下键入以下内容来启用文本突出显示。


:set hlsearch

然后通过键入以下内容搜索尾随空格:


/s+$

这将显示整个文件中找到的所有尾随空格和制表符。

然后,要使用 Vim 清除文件中的所有尾随空格,请键入以下 Vim 命令。


:%s/s+$//

此命令的意思是用空字符替换在行末尾找到的所有空白字符 (s+$)。

©2015-2025 艾丽卡 support@alaica.com