Linux如何重新命名目录

重新命名目录是一个最基本的运作经常需要执行在Linux系统。 你可以重新命名目录从GUI文件管理与一对夫妇的点击或使用命令行的终端。

这篇文章说明如何重新命名目录的使用命令行。

重新命名目录

在Linux和Unix操作系统,可以使用 mv (短的移动)命令重新命名或移动的文件和目录,从一个地点到另一个。

语法 mv 命令移动目录如下:

mv [OPTIONS] source destination

例如,重新命名目录 dir1 作为 dir2 你会运行:

mv dir1 dir2

当名目录的,必须明确指定两个参数 mv 命令。 第一个论点是当前的目录名称,第二个是新的的名称。

重要的是要注意,如果 dir2 已经存在, dir1 移动到 dir2 目录。

重新命名一个目录,该目录是不是在目前的工作目录,需要指定任何绝对或相对的路径:

mv /home/user/dir1 /home/user/dir2

重命名的多个目录

重新命名单目录是一项简单的任务,但重新命名的多种目录一旦可以是一个挑战,尤其是对于新的Linux用户。

重命名的多个目录是一次很少的需要。

重命名多个目录 mv

mv 命令可以重新命名只有一个文件的时间。 然而,它可以使用与其他命令,如 find 或内部的循环,重新命名的多个文件的一次。

这是一个实例,展示了如何使用Bash for 环追加的目前 日期 名称的所有目录中目前的工作目录:

for d in *; do 
  if [ -d "$d" ]; then
    mv -- "$d" "${d}_$(date +%Y%m%d)"
  fi
done

让我们来分析代码线的行:

  • 第一线创建一个循环和重复通过一个列表中的所有文件。
  • 第二线的检查,如果文件是一个目录。
  • 第三线追加的目前日期为每一个目录。

这里是一个解决方案ti同任务使用 mv 在结合 find:

find . -mindepth 1 -prune -type d -exec sh -c 'd="{}"; mv -- "$d" "${d}_$(date +%Y%m%d)"' \;

find 指令通过的所有目录 mv 一个接一个使用的 -exec 选项。 字符串 {} 是的名称,该目录目前正在处理中。

正如你可以看到的例子中,多名目录 mv 不是一项容易的任务,因为它需要一个良好的知识砸向脚本。

重命名多个目录 rename

rename 命令用以重新命名的多文件和目录。 这个命令是比 mv 因为它需要的基本知识,定期表达方式。

有两个版本的 rename 命令与不同的语法。 我们将使用Perl版本 rename 命令。 该文件被更名为根据给定 perl regular expression .

下面的示例说明如何来取代空间中的名字中的所有目录目前的工作目录强调:

find . -mindepth 1 -prune -type d | rename 'y/ /_/'

要在安全方面,通过 -n 选择 rename 打印名字的目录更名为没有重新命名它们。

这里是另一个实例,展示了如何转换成目录,名为小写:

find . -mindepth 1 -prune -type d | rename 'y/A-Z/a-z/'

结束

我们给你们展示如何使用 mv 命令重新命名目录。


已发布

分类

作者:

标签

评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注