如何使用mv命令在Linux中移动文件和目录

linux

移动文件和目录是您在Linux系统上经常需要执行的最基本的任务之一。也是作为一个Linux用户必须会使用的命令。它是你成为Linux系统管理员一个重要命令。

在本教程中,我们将说明如何使用mv命令移动文件和目录。包括语法和选项,移动一个或多个文件和目录,覆盖前的提示,强制覆盖,不要覆盖现有文件,备份文件。

如何使用mv命令

mv命令(move的简称)用于将文件和目录从一个位置重命名或者移动到另一个位置。mv命令的语法如下:

mv [OPTIONS] source destination

source可以是一个或多个文件或目录,destination可以是单个文件或目录。

  • 如果您将多个文件或目录指定为source,则destination必须是一个目录。在这种情况下,source文件将移动到destination目录中。
  • 如果将单个文件指定为source,并且destination是目录,则该文件将移动到destination目录中。
  • 如果您将一个文件指定为source,并将一个文件指定为destination,那么您将重命名该文件。

要移动文件,你需要对source读的权限,对destination有写入权限。否则,您将收到一个权限被拒绝的错误。

例如,要将文件file1从当前工作目录移动到/tmp要运行的目录:

mv file1 /tmp

要重命名文件,请指定目标文件名:

mv file1 file2

移动目录的命令与移动文件时的命令相同。在下面的例子中,如果dir2目录存在,mv命令将移动dir1dir2中。如果dir2不存在,dir1将被重命名为dir2

mv dir1 dir2

移动多个文件和目录

要移动多个文件和目录,请指定要移动的文件作为源。例如移动文件file1file2dir1目录,你可以键入以下命令:

mv file1 file2 dir1

mv命令还允许您使用模式匹配。例如,要将所有pdf文件从当前目录移动到~/Documents目录,您将使用:

mv *.pdf ~/Documents

mv命令选项

mv命令接受影响默认命令行为的选项。在某些Linux发行版中,mv命令可能是带有自定义选项集的命令的别名。例如,在CentOS中,mv命令是的mv -i的别名。您可以使用以下type命令查找mv是否为别名:

type mv

如果mv命令是别名,则输出将如下所示:

mv is aliased to `mv -i'

如果指定冲突的选项,则以最后的选项优先。

覆盖前提示

默认情况下,如果目标文件存在,它将被覆盖。如需确认提示,请使用-i选项:

mv -i file1 /tmp
mv: overwrite '/tmp/file1'?

要覆盖文件,请键入字符yY

强制覆盖

如果尝试覆盖文件,mv命令将提示您是否要覆盖文件:

mv -i file1 /tmp
mv: replace '/tmp/file1', overriding mode 0400 (r--------)? 

如果不需要提示,请使用-f选项:

mv -f file1 /tmp

当您需要覆盖多个文件时,此选项特别有用。

不要覆盖现有文件

-n选项告诉mv从不覆盖现有文件:

mv -f file1 /tmp

如果file1存在,则上面的命令将不执行任何操作,否则会将文件移动到/tmp目录中。

备份文件

如果目标文件存在,则可以使用以下-b选项创建该文件的备份:

mv -b file1 /tmp

备份文件的名称与原始文件的名称相同,并附加一个波浪号~

使用ls命令来验证是否已创建备份:

ls /tmp/file1*
/tmp/file1  /tmp/file1~

详细输出

另一个有用的选项是-v。使用此选项时,mv命令将打印每个移动文件的名称:

mv -i file1 /tmp
renamed 'file1' -> '/tmp/file1'

结论

到目前为止,您应该知道如何使用mv命令移动文件和目录有了很好的了解。被命令行吓到的Linux新用户可以使用GUI文件管理器移动文件。有关mv命令的更多信息,请参见手册页。如果您有任何问题或反馈,请随时发表评论。

以上是 如何使用mv命令在Linux中移动文件和目录 的全部内容, 来源链接: utcz.com/z/507019.html

回到顶部