Linux 重命名文件夹
在 Linux 中,文件夹或目录的重命名过程不是使用传统的重命名命令完成的;相反,它是通过“mv”命令完成的。“mv”命令是一个多用途命令。它不仅限于移动文件和目录,还可用于重命名文件和目录。
保持文件系统结构化以方便访问数据非常重要。有时,我们会创建一些临时文件,稍后需要重命名它们。在这种情况下,它是一个方便的工具。
但是,可以使用各种命令和实用程序重命名目录,例如 mv 命令、查找命令、重命名命令、使用 Bash 等。
让我们看一下以下重命名目录的技术:
使用 mv 命令重命名目录
基本上,mv 命令用于移动文件,但我们也可以通过它重命名文件夹和目录。我们可以通过执行 mv 命令简单地重命名文件夹,然后分别执行旧文件夹名称和新文件夹名称。
例如,要将名为“Old_folder”的文件夹重命名为“New_folder”,请按如下方式执行命令:
mv Old_folder New_folder
上面的命令将重命名文件夹。
执行 ls 命令以列出当前工作目录中的所有可用文件和文件夹:
ls
输出结果:
使用 find 命令重命名目录
在某些情况下,我们不知道所需目录的确切位置。find 命令帮助我们查找和定位 Linux 系统中的目录。
要查找目录,请使用带有“type”选项的 find 命令从文件系统中查找目录。我们可以通过使用“-execdir”选项执行 mv 命令来重命名它们。
例如,要重命名“New_folder”目录,请执行以下命令来查找它:
find . -depth -type d -name "New_folder"
上面的命令将从文件系统中找到目录。如果您不记得确切的目录名称,可以键入匹配的目录名称。请考虑以下输出:
现在,要重命名目录,请使用“-execdir”选项执行 mv 命令,如下所示:
find . -depth -type d -name New_folder -execdir mv {} Directory \;
上面的命令会将目录重命名为“Directory”。我们可以使用 ls 命令列出文件和目录,如下所示:
ls
输出结果:
使用rename命令重命名目录
rename 命令是一个内置实用程序,用于重命名大多数 Linux 发行版的文件和目录。但是,它可能不能直接用于所有 Linux 发行版。
语法:
rename <expression> <directory>
为了使用重命名,我们必须将其放在我们的机器上。如果未安装,它将显示输出,如下所示:
要安装重命名,请按如下方式执行命令:
sudo apt install rename
它将启动一个守护进程并在我们的机器上安装重命名配置。请考虑以下输出:
重命名配置已成功安装在我们的机器上。现在我们将使用重命名命令。请考虑以下示例:
示例 1:如果我们想将大写的目录重命名为小写。要显示目录,请按如下方式执行 ls 命令:
ls
上面的命令将显示当前工作目录中的所有目录。请考虑以下输出:
现在,执行重命名操作,执行以下命令:
rename 'y/A-Z/a-z/' *
上面的命令会将所有目录从大写重命名为小写。
要验证操作,请通过执行 ls 命令列出所有目录:
ls
输出结果:
从上面的输出中,所有目录都重命名为小写。
我们可以将所有“.txt”扩展文件重命名为“.pdf”扩展名。我们在当前工作目录中有以下文本文件:
要将所有文本文件重命名为 pdf 文件,请按如下方式执行命令:
rename 's/\.txt$/\.pdf/' *.txt
上面的命令会将所有文本文件重命名为 pdf 文件。请考虑以下输出:
使用 Bash 脚本重命名目录
我们可以使用 Bash 脚本语言重命名文件和目录。要使用 Bash 脚本重命名多个目录,请创建一个新脚本,并使用带有 for 循环的“mv”命令。让我们了解以下示例:
首先,创建一些可以稍后重命名的文本文件。要一次创建 10 个文件,请执行以下脚本:
for i in {1..10}
>do
>touch $i.txt;
>done;
上面的脚本将创建 10 个文本文件。请考虑以下命令:
要验证文件是否已创建,请执行以下脚本:
for i in *.txt
>do
>echo $i;
>done;
上面的脚本将显示所有创建的文件。请考虑以下输出:
现在创建一个变量“newfile”,执行以下脚本:
for i in *.txt
>do
>newfile=${i/.txt/.zip};
>echo $newfile;
>done;
上面的脚本将创建一个变量“newfile”,并将所有“.txt”扩展名替换为“.zip”扩展名。echo 命令将显示变量值。请考虑以下输出:
现在,我们可以使用 mv 命令重命名所有文件。要使用 bash 脚本使用 mv 命令重命名文件,请执行以下脚本:
for i in *.txt
>do
>newfile=${i/.txt/.zip};
>mv $i $newfile;
>done:
请考虑以下脚本:
上面的脚本会将所有文本文件转换为zip文件。要列出文件,请按如下方式执行 ls 命令:
ls -lta
上面的命令将列出带有时间和其他指定选项的文件。请考虑以下命令:
获取帮助
如果在使用重命名命令时卡住,可以通过执行以下命令从命令行获取帮助:
rename -help
上面的命令将显示可以与重命名命令一起使用的所有可用选项。请考虑以下输出:
从上面的输出中,我们可以看到选项及其用法显示。
此外,我们可以通过执行以下命令来阅读手册:
man rename
上面的命令将在您的终端上显示手册。请考虑以下输出:
滚动上面的手册以了解更多信息。要退出终端窗口,请按“q”键。
热门文章
优秀文章