A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

本帖最后由 小蜀哥哥 于 2019-8-29 12:43 编辑

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




前言

移动文件和目录是您经常在Linux系统上需要执行的最基本操作之一,有时候我们不仅仅需要拷贝文件,还需要对应移动甚至重命名。

如何使用mv命令

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

mv [OPTIONS] source destination

源可以是一个或多个文件或目录,目标可以是单个文件或目录。

如果指定多个文件或目录作为源,则目标必须是目录。 在这种情况下,源文件将移动到目标目录。
如果将单个文件指定为源,并且目标目标是现有目录,则将文件移动到指定目录。
如果您将单个文件指定为源,将单个文件指定为目标目标,那么您将重命名该文件。
如果源是目录而目标不是,则将源重命名为目标,否则它将被移动到目标目录中。
要移动文件或目录,您需要对源和目标都具有写入权限。 否则,您将收到权限被拒绝错误。
例如,要将文件itheima.com.txt从当前工作目录移动到/tmp目录,您需要运行:
[Shell] 纯文本查看 复制代码
mv itheima.com.txt /tmp

要重命名文件itheima.txt,请指定目标文件名(这里是itheima.com.txt):
[Shell] 纯文本查看 复制代码
mv itheima.txt itheima.com.txt

移动目录的命令与移动文件时的命令相同。 在以下示例中,如果dir2目录存在,该命令将把dir1移到dir2中。如果dir2不存在,dir1将被重命名为dir2:
[Shell] 纯文本查看 复制代码
mv dir1 dir2

移动多个文件和目录

要移动多个文件和目录,请指定要作为源移动的文件。 例如,要将文件itheima和itcast移动到linux目录,您可以键入:
[Shell] 纯文本查看 复制代码
mv itheima itcast linux

mv命令还允许您使用模式匹配。 例如,要将所有pdf文件从当前目录移动到〜/itheima.com目录,您需要使用:
[Shell] 纯文本查看 复制代码
mv *.pdf ~/itheima.com


mv命令选项

mv命令接受影响默认命令行为的选项。 在某些Linux发行版中,mv可能是mv命令的别名,带有一组自定义选项。 例如,在CentOS中,mv是mv -i的别名。 您可以使用type命令查找mv是否为别名:
[Shell] 纯文本查看 复制代码
type mv

如果mv是别名,输出将如下所示:
[Shell] 纯文本查看 复制代码
mv is aliased to `mv -i'

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

覆盖前提示

默认情况下,如果目标文件存在,它将被覆盖。 要提示确认,请使用-i选项:
[Shell] 纯文本查看 复制代码
mv -i itheima.com.txt /tmp


提示
[Shell] 纯文本查看 复制代码
mv:是否覆盖"/tmp/itheima.com.txt"?


要覆盖文件类型,请输入字符y或Y.

备份文件

如果目标文件存在,则可以使用-b选项创建它的备份:
[Shell] 纯文本查看 复制代码
mv -b itheima.com.txt /tmp

备份文件将与原始文件具有相同的名称,并附加波形符(〜)。

使用ls命令验证是否已创建备份:
[Shell] 纯文本查看 复制代码
ls /tmp/itheima.com.txt*

结果:/tmp/itheima.com.txt  /tmp/itheima.com.txt~

总结

到目前为止,您应该很好地理解如何使用mv命令来移动文件和目录。 受命令行威胁的新Linux用户可以使用GUI文件管理器移动文件。
有关mv命令的更多信息,请查看手册页。


0 个回复

您需要登录后才可以回帖 登录 | 加入黑马