01 Linux基础 35 拷贝和移动命令 07 mv命令给文件或者目录重命名
目录:
移动文件和目录是您在Linux系统上经常需要执行的最基本的任务之一。
在本教程中,我们将说明如何使用
mv
命令移动文件和目录。
如何使用
mv
命令
mv
命令(移动的简称)用于将文件和目录从一个位置重命名和移动到另一个位置。
mv
命令的语法如下:
mv SOURCE DESTINATION
SOURCE
可以是一个或多个文件或目录,而
DESTINATION
可以是单个文件或目录。
- 当多个文件或目录作为
SOURCE给出时,DESTINATION必须是一个目录。 在这种情况下,SOURCE文件将移至目标目录。如果您将单个文件指定为SOURCE,而DESTINATION目标是现有目录,则该文件将移至指定目录。如果您将单个文件指定为SOURCE,然后将一个文件作为DESTINATION目标,则您将重命名该文件。当SOURCE是目录并且DESTINATION不存在时,SOURCE将重命名为DESTINATION。 否则,如果存在DESTINATION,则将其移到DESTINATION目录中。
要移动文件或目录,您需要同时具有
SOURCE
和
DESTINATION
写许可权。 否则,您将收到一个权限被拒绝的错误。
例如,要将文件
file1
从当前工作目录移动到
/tmp
目录,可以运行:
mv file1 /tmp
要重命名文件,您需要指定目标文件名:
mv file1 file2
移动目录的语法与移动文件时的语法相同。 在以下示例中,如果
dir2
目录存在,该命令会将
dir1
移动到
dir2
。 如果
dir2
不存在,则
dir1
将重命名为
dir2
:
移动多个文件和目录
要移动多个文件和目录,请指定要移动的文件作为源。 例如,要将文件
file1
和
file2
移动到
dir1
目录,您可以输入:
mv file1 file2 dir1
mv
命令还允许您使用模式匹配。 例如,要将所有
pdf
文件从当前目录移动到
~/Documents
目录,可以使用:
mv
命令选项
mv
命令接受几个影响默认命令行为的选项。
在某些Linux发行版中,
mv
可能是
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'?
要覆盖文件,请输入
y
或
Y
强制覆盖
如果尝试覆盖只读文件,则
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*
详细输出
另一个有用的选项是
-v
。 使用此选项时,命令将显示每个移动文件的名称:
mv -i file1 /tmp
renamed 'file1' -> '/tmp/file1'
结论
mv
命令用于移动和重命名文件和目录。
有关
mv
命令的更多信息,请检查手册页或在终端中键入
man mv
。
受到命令行威胁的新Linux用户可以使用GUI文件管理器移动文件。
电视终端






