如何在 Linux Shell 上用下划线替换文件名中的空格

在使用 Linux 时,您可能会遇到一些仅适用于不包含空格的文件名的实用程序和应用程序。 我们并不总是以这种“无空格”格式保存文件,并且可能必须寻找一种解决方法,将文件名中的空格替换为下划线字符“_”。 这样,您的文件名将不包含空格,您可以轻松地在所有应用程序中使用它们。

在本文中,我们将为您解释两种将文件名中的所有空格转换为下划线的方法,非常简单地通过命令行。

我们已经在 Ubuntu 18.04 LTS 系统上运行了本文中提到的命令和过程。

我将用作本文示例的“我的下载”文件夹包含所有文件名中的空格。

$ ls Downloads

我将使用此文件夹来解释如何将文件名转换为新格式。

方法一:通过单个 mv 命令

在这种方法中,我们将在 for 循环中使用 Ubuntu mv 命令来重命名给定目录中的所有文件/文件夹,以便名称中的所有空格都替换为下划线字符。

通过应用程序启动器搜索或 Ctrl+Alt+T 快捷方式打开 Ubuntu 命令行终端。

这是您将使用的命令的语法:

$ for file in *; do mv "$file" `echo $file | tr ' ' '_'` ; done

我运行了相同的命令在我的下载文件夹中用下划线替换空格: