仅使用命令行实用程序在 Linux 中重命名单个或多个目录的基本指南
重命名文件和目录是用户必须执行的一项常见任务。幸运的是,Linux 有一种直接从终端重命名文件和目录的轻松方法。
我们将讨论两个 Linux 命令来重命名 Linux 中的目录。这 MV
和 改名
命令。
使用 MV
Linux 重命名目录命令
mv 命令是 Linux 和所有其他类 Unix 系统提供的基本命令之一。 MV
基本上用于将文件从一个位置移动到另一个位置。但它也被广泛用作重命名文件和目录的方法。
使用以下语法重命名目录 MV
.
句法:
mv [old_name_of_directory] [new_name_of_directory]
首先,使用以下命令检查当前工作目录中存在的目录 ls
命令。
ls
输出:
gaurav@ubuntu:~/workspace$ ls -l 总计 76 drwxr-xr-x 2 root 4096 Sep 9 16:19 daa drwxr-xr-x 2 root 4096 Sep 9 16:20 dmta drwxr-xr-x 2 root root 4096 Sep 9 15:19 pc drwxr-xr-x 2 root root 4096 Sep 9 16:19 pmcd drwxr-xr-x 2 root root 4096 Sep 9 16:19 qps drwxr-xr-x 2 root root 4016 Sep 9 :19 固态硬盘
现在,我们将重命名名为的文件夹 达 到 机器人 使用 MV
命令。
例子:
mv daa 机器人
然后,再次使用 ls 命令检查目录列表以验证目录的新名称。
gaurav@ubuntu:~/workspace$ ls dmta pc pmcd qps 机器人 ssda
如果您尝试将目录重命名为已使用的名称 通过所需位置的另一个目录,具有旧名称的目录将被删除并被新目录覆盖。
例子:
gaurav@ubuntu:~/workspace$ ls -l total 76 drwxr-xr-x 2 root 4096 Sep 9 16:19 dmta drwxr-xr-x 2 root root 4096 Sep 9 16:20 pc drwxr-xr-x 2 root root 4096 Sep 9 15:19 pmcd drwxr-xr-x 2 root root 4096 Sep 9 16:19 qps drwxr-xr-x 2 root root 4096 Sep 9 16:19 robots drwxr-xr-x 2 root root 4096 Sep 9 :19 固态硬盘
从上面的列表中,让我们使用目录 dmta、pc 和 qps.
示例输出:
gaurav@buntu:~/workspace$ mv dmta qps gaurav@ubuntu:~/workspace$ ls pc pmcd qps 机器人 ssda gaurav@ubuntu:~/workspace$
在这里,我尝试重命名目录‘脱氧核糖核酸' 作为 'QPS'.这里目录 qps 已经存在,但即使如此,终端也没有显示覆盖提示。
此外,您可以看到名为‘的目录脱氧核糖核酸' 已被删除。这是使用的缺陷 MV
命令如果存在多个同名目录。
为了避免这种歧义,我们可以使用 改名
命令。
使用 改名
重命名目录的命令
如上所述, MV
是一个非常基本的命令,也有一些模棱两可的行为。为了克服这些缺点,我们可以使用 改名
命令一次重命名多个文件。
改名
Linux 发行版中没有内置。您必须先单独安装它。 改名
有两个不同的版本。但是它们的功能在所有环境中都是一样的。唯一的区别是安装命令 改名
公用事业。在下面查看它们。
安装 改名
在 Ubuntu 和 Debian 发行版上:
sudo apt-get install 重命名
安装 改名
在 Fedora、CentOS 和 RedHat 发行版上:
须藤 dnf 安装 prename
在 Linux 计算机上安装重命名后,使用下面的代码重命名单个目录。
句法:
sudo 重命名 [perl 表达式] [目录]
例子:
我们将尝试首先使用重命名单个目录 改名
命令。我们将重命名名为的目录 目录2 作为 ssh.
输出:
root@ubuntu:~# ls DIR1 dir2 dir3 dir4 dir5 pc snap
root@ubuntu:~# rename 's/dir2/ssh/' dir2 root@ubuntu:~# ls -l total 28 drwxr-xr-x 2 root root 4096 Sep 9 15:15 DIR1 drwxr-xr-x 2 root root 4096 Sep 9 15:15 dir3 drwxr-xr-x 2 root root 4096 Sep 9 15:15 dir4 drwxr-xr-x 2 root root 4096 Sep 9 15:15 dir5 drwxr-xr-x 2 root root 4195 9: Sep 19 pc drwxr-xr-x 3 root root 4096 Sep 9 14:59 snap drwxr-xr-x 2 root root 4096 Sep 9 15:15 ssh
从上面的输出我们可以看到名为‘的目录目录2‘ 重命名为 ‘ssh' 使用 改名
命令。
一次重命名多个目录使用 改名
命令
假设我有两个目录,‘游戏' 和 '工作'.这两个目录都以小写命名。我将使用以下命令更改这些目录的名称 改名
命令为大写字母。
例子:
须藤重命名 'y/a-z/A-Z/' [directories_to_rename]
输出:
使用检查当前目录的列表 ls
命令。
root@ubuntu:~# ls -l total 36 drwxr-xr-x 2 root root 4096 Sep 9 15:15 DIR1 drwxr-xr-x 2 root root 4096 Sep 9 15:15 dir3 drwxr-xr-x 2 root root 4096 Sep 9 15:15 dir4 drwxr-xr-x 2 root root 4096 Sep 9 15:15 dir5 drwxr-xr-x 2 root root 4096 Sep 9 15:31 game.sql drwxr-xr-x 2 root root 4096 Sep 9 15 :19 pc drwxr-xr-x 3 root root 4096 Sep 9 14:59 snap drwxr-xr-x 2 root root 4096 Sep 9 15:15 ssh drwxr-xr-x 2 root root 4096 Sep 9 15:30 work.sql
使用 rename 命令更改突出显示目录的名称。
root@ubuntu:~# sudo rename 'y/a-z/A-Z/' *.sql
检查输出 ls
命令。
root@ubuntu:~# ls -l total 36 drwxr-xr-x 2 root root 4096 Sep 9 15:15 DIR1 drwxr-xr-x 2 root root 4096 Sep 9 15:31 GAME.SQL drwxr-xr-x 2 root root 4096 Sep 9 15:30 WORK.SQL drwxr-xr-x 2 root root 4096 Sep 9 15:15 dir3 drwxr-xr-x 2 root root 4096 Sep 9 15:15 dir4
在这里我们可以看到我们已经将目录名称从小写更改为大写。
示例 2:
在这个例子中,我们将尝试同时重命名多个文件的一部分。
让我们先列出目录。
root@ubuntu-s-1vcpu-1gb-blr1-01:~# ls -l total 56 drwxr-xr-x 2 root root 4096 Sep 9 15:15 DIR1 drwxr-xr-x 2 root root 4096 Sep 9 15:31 GAME.SQL drwxr-xr-x 2 root root 4096 Sep 9 15:30 WORK.SQL drwxr-xr-x 2 root root 4096 Sep 9 15:50 dir1.sql drwxr-xr-x 2 root root 4096 Sep 9 15: 50 dir2.sql drwxr-xr-x 2 root root 4096 Sep 9 15:15 dir3 drwxr-xr-x 2 root root 4096 Sep 9 15:15 dir4 drwxr-xr-x 2 root root 4096 Sep 9 15:15 drxrw -xr-x 2 根根 4096 Sep 9 15:19 pc drwxr-xr-x 2 根根 4096 Sep 9 15:54 sheldon1 drwxr-xr-x 2 根根 4096 Sep 9 15:54 sheldon2 drwxr-xr-x root root 4096 Sep 9 15:54 sheldon3 drwxr-xr-x 3 root root 4096 Sep 9 14:59 snap drwxr-xr-x 2 root root 4096 Sep 9 15:15 ssh
将 rename 命令运行为 rename -v,以便我们可以看到所做的更改作为输出。
root@ubuntu:~#rename -n -v 谢尔顿谢尔顿EPQ谢尔顿? 'sheldon1' -> 'sheldonEPQ1' 'sheldon2' -> 'sheldonEPQ2' 'sheldon3' -> 'sheldonEPQ3'
root@ubuntu:~# ls -l total 56 drwxr-xr-x 2 root root 4096 Sep 9 15:15 DIR1 drwxr-xr-x 2 root root 4096 Sep 9 15:31 GAME.SQL drwxr-xr-x 2 root root 4096 Sep 9 15:30 WORK.SQL drwxr-xr-x 2 root root 4096 Sep 9 15:54 sheldonEPQ1 drwxr-xr-x 2 root root 4096 Sep 9 15:54 sheldonEPQ2 drwxr-xr-x 96 root 9 15:54 谢尔顿EPQ3
在本例中,我们同时更改了多个文件的名称部分。
结论
在本教程中,我们专门学习了如何使用 MV
和 改名
命令。我们学会了重命名单个目录以及多个目录。