Mv (Unix)

mv(英語:move)是类Unix操作系统中移动单个或多个文件或目录的命令。一般在移动操作之后,原来的文件或目录不能再次访问。移动后的文件名可以与原来相同(只要不与原文件在相同目录中),也可以不同。当需要移动的文件和新文件位于同一文件系统上时,mv命令只是将原始文件重命名来达到移动的效果。操作要求拥有需要被修改目录的写入权限。

与已存在文件的冲突

当文件将被移动时,若目标目录含有与原始文件同名的文件,则目标文件将被删除。如果已存在的目标文件并没有写权限,但它的所在目录拥有写权限,则mv命令在移动前请求用户确认操作(当mv在终端中执行时)。但是使用 -f (强制) 选项来移动时,mv命令会跳过用户确认环节而直接执行移动。

移动行为

选项

大多数版本的mv命令支持以下选项:

  • -h 帮助模式,显示支持的附加选项。 使用man mv命令可以查看在你所使用的操作系统中mv命令支持的详细参数选项。
  • -i 交互模式,在将要覆盖一个已存在文件之前在标准错误中输出提示,若用户回答以'Y'或'y'字母开头,则覆盖操作将继续执行(覆盖此选项之前的-f和-n选项)。
  • -n 不覆盖已存在的文件。(覆盖此选项之前的-f和-i选项)。
  • -f 强制模式,强制覆盖目标文件(覆盖此选项之前的-i和-n选项)。
  • -v 详述模式,在移动文件(或目录)后列出它们的名字。

附加选项(可以使用命令 man mv 以查看详情):

  • -u 更新选项,也就是只在原始文件比目标文件新或目标文件不存在时执行移动。
  • -b 备份选项,使用一个~作为后缀来备份已存在的目标文件。

示例

将'myfile'重命名为'myoldfilename':

mv myfile myoldfilename

从当前目录移动'myfile'到用户家目录

 mv myfile ~/myfile

将'myfile'移动到相对路径位置'subdir/myfile':

 mv myfile subdir/myfile     
 mv myfile subdir            # 此命令与前一命令作用相同,但不指明目标文件的文件名(暗示使用相同的文件名)

将'myfile'移动到子目录'subdir',并改名为'myfile2':

 mv myfile subdir/myfile2

移动'be.03'文件到已挂载目录'/mnt/bkup'的子目录'bes'中(原文件将在移动完成后被删除):

 mv be.03 /mnt/bkup/bes

移动多个文件到'mydir'(这些文件是'afile' 'another' '/home/yourdir/yourfile'):

 mv afile another /home/yourdir/yourfile mydir

将以'Jun'开头的文件都移到'bkup/06'目录中,并输出被移动文件的详细清单:

 mv -v Jun* bkup/06

查看关于mv命令的简单帮助,包括命令语法:

 mv --help

查看mv命令的手册页

 man mv

参见

外部参考

  • mv(页面存档备份,存于互联网档案馆): move files - Commands & Utilities Reference, The Single UNIX® Specification, Issue 7 from The Open Group mv
  • mv(1)(页面存档备份,存于互联网档案馆): move (rename) files – Linux User Commands Manual
文件系統
  • cat
  • cd
  • chmod
  • chown
  • chgrp
  • cksum
  • cmp
  • cp
  • dd
  • du
  • df
  • file
  • fsck
  • fuser
  • ln
  • ls
  • mkdir
  • mount
  • mv
  • pax英语pax (Unix)
  • pwd
  • rm
  • rmdir
  • size
  • split
  • stat
  • tee
  • touch
  • type英语type (Unix)
  • umask英语umask
程序
  • at
  • bg
  • chroot
  • cron
  • fg
  • kill
  • killall英语killall
  • nice
  • pgrep
  • pkill英语pkill
  • ps
  • pstree英语pstree
  • time
  • top
用户环境
  • clear
  • env
  • exit
  • history英语history (Unix)
  • id
  • logname
  • mesg英语mesg
  • passwd
  • su
  • sudo
  • uptime
  • talk英语talk (software)
  • tput英语tput
  • uname
  • w
  • wall英语wall (Unix)
  • who
  • whoami
  • write英语write (Unix)
文本编辑
  • awk
  • banner英语banner (Unix)
  • basename
  • comm英语comm
  • csplit英语csplit
  • cut
  • diff
  • dirname
  • ed
  • ex
  • fmt英语fmt
  • fold英语fold (Unix)
  • head英语head (Unix)
  • iconv
  • join英语join (Unix)
  • less
  • more
  • nl英语nl (Unix)
  • paste英语paste (Unix)
  • sed
  • sort英语sort (Unix)
  • spell英语spell (Unix)
  • strings英语strings (Unix)
  • tail
  • tr
  • uniq英语uniq
  • vi
  • wc
  • xargs
壳层内建
网络
查找
文档
  • apropos英语apropos (Unix)
  • help英语help (command)
  • man
软件开发
杂项
  • bc
  • cal
  • dc
  • expr
  • lp英语lp (Unix)
  • lpr
  • sleep
  • true和false
  • yes