mv

mv [OPTION]... [-T] SOURCE DEST

mv [OPTION]... SOURCE... DIRECTORY

mv [OPTION]... -t DIRECTORY SOURCE...

  • Rename SOURCE to DEST, or move SOURCE(s) to DIRECTORY 改名或移动文件

  • 第一场景:将单个源文件改名成单个新文件

  • 第二场景:将多个文件移动到一个目录

  • 第三场景:-t先指定一个目录,再指定多个文件移入

  • mv移动目录时,默认为递归.即目录及其下所有一起移动

  • 在跨文件系统移动文件时,mv执行先拷贝,再将原有文件删除,而链至该文件的链接也将丢失

  • 默认的mv * ../ 这种通配符不支持.开头的隐藏文件

  • 移动目录时,目录内有隐藏文件一起,将一起跟随移动

  • 可以mv .bashrc ../ 指名移动隐藏文件

  • 为防止 rm -rf / 这种失误,经常将 rm 改成 mv 指令,但 alias rm=mv 语法错误

  • alias rm='mv -t /home/xzt7566/Downloads' 将文件删除定义成别名,移动到下载目录里

  • 常用选项:

    -b :like --backup but does not accept an argument 覆盖文件前先行备份
    -f :do not prompt before overwriting 覆盖前不提示
    -i :prompt before overwrite 覆盖前询问
    -u :--update
    
  • 将文件改名,必需只有1对1,改名时不支持通配符,默认会直接覆盖

      [xzt7566@centos7-test Downloads]$ ls
      1.list  2.list  3.list  4.txt  5.txt  6.sh  test
      [xzt7566@centos7-test Downloads]$ mv test test2 文件改名.只支持1对1
      [xzt7566@centos7-test Downloads]$ ls
      1.list  2.list  3.list  4.txt  5.txt  6.sh  test2
      [xzt7566@centos7-test Downloads]$ 
    
  • 将文件移至上一层目录.

      [xzt7566@centos7-test test]$ ls ..  显示上一层目录内容.
      2.list  4.txt  5.txt  6.sh  test
      [xzt7566@centos7-test test]$ mv * ..  将所有文件移至上一层目录.
      [xzt7566@centos7-test test]$ ls ..
      1.list  2.list  3.list  4.txt  5.txt  6.sh  test
    

你可能感兴趣的:(mv)