2024年10月Linux下mv命令实例讲解(2)

发布时间:

  ⑴实例五:将文件file改名为file,即使file存在,也是直接覆盖掉。

  ⑵mv -f log.txt log.txt

  ⑶[rootlocalhost test]# ll

  ⑷-rw-r--r-- root root - : log.txt

  ⑸-rw-r--r-- root root - : log.txt

  ⑹[rootlocalhost test]# cat log.txt

  ⑺[rootlocalhost test]# cat log

  ⑻cat: log: 没有那个文件或目录

  ⑼[rootlocalhost test]# ll

  ⑽-rw-r--r-- root root - : log.txt

  ⑾-rw-r--r-- root root - : log.txt

  ⑿[rootlocalhost test]# cat log.txt

  ⒀[rootlocalhost test]# cat log.txt

  ⒁dfosdfsdfdss

  ⒂[rootlocalhost test]# mv -f log.txt log.txt

  ⒃[rootlocalhost test]# cat log.txt

  ⒄dfosdfsdfdss

  ⒅[rootlocalhost test]# ll

  ⒆-rw-r--r-- root root - : log.txt

  ⒇[rootlocalhost test]#

  ⒈log.txt的内容直接覆盖了log.txt内容,-f 这是个危险的选项,使用的时候一定要保持头脑清晰,一般情况下最好不用加上它。

  ⒉实例六:目录的移动

  ⒊mv dir dir

  ⒋[rootlocalhost test]# ll

  ⒌-rw-r--r-- root root - : log.txt

  ⒍[rootlocalhost test]# ll

  ⒎-rw-r--r-- root root - : log.txt

  ⒏[rootlocalhost test]# cd 。。

  ⒐[rootlocalhost test]# ll

  ⒑drwxr-xr-x root root - : scf

  ⒒drwxrwxrwx root root - : test

  ⒓drwxr-xr-x root root - : test

  ⒔drwxr-xr-x root root - : test

  ⒕[rootlocalhost test]# cd test

  ⒖[rootlocalhost test]# ll

  ⒗drwxr-xr-x root root - : logs

  ⒘-rw-r--r-- root root - : test.txt

  ⒙[rootlocalhost test]# cd 。。

  ⒚[rootlocalhost test]# mv test test

  ⒛[rootlocalhost test]# ll

  ①drwxr-xr-x root root - : scf

  ②drwxrwxrwx root root - : test

  ③drwxr-xr-x root root - : test

  ④[rootlocalhost test]# cd test/

  ⑤[rootlocalhost test]# ll

  ⑥drwxr-xr-x root root - : logs

  ⑦-rw-r--r-- root root - : test.txt

  ⑧drwxr-xr-x root root - : test

  ⑨[rootlocalhost test]#

  ⑩如果目录dir不存在,将目录dir改名为dir;否则,将dir移动到dir中。

  Ⅰ实例:移动当前文件夹下的所有文件到上一级目录

  Ⅱmv * 。。/

  Ⅲ[rootlocalhost test]# ll

  Ⅳ-rw-r--r-- root root - : log.txt

  Ⅴ-rw-r--r-- root root - : log.txt

  Ⅵ[rootlocalhost test]# mv * 。。/

  Ⅶ[rootlocalhost test]# ll

  Ⅷ[rootlocalhost test]# cd 。。

  Ⅸ[rootlocalhost test]# ll

  Ⅹ-rw-r--r-- root root - : log.txt

  ㈠-rw-r--r-- root root - : log.txt

  ㈡drwxr-xr-x root root - : logs

  ㈢-rw-r--r-- root root - : test.txt

  ㈣drwxr-xr-x root root - : test

  ㈤实例八:把当前目录的一个子目录里的文件移动到另一个子目录里

  ㈥mv test/*.txt test

  ㈦[rootlocalhost test]# ll

  ㈧drwxr-xr-x root root - : scf

  ㈨drwxrwxrwx root root - : test

  ㈩drwxr-xr-x root root - : test

  [rootlocalhost test]# cd test

  [rootlocalhost test]# ll

  -rw-r--r-- root root - : log.txt

  -rw-r--r-- root root - : log.txt

  drwxr-xr-x root root - : logs

  -rw-r--r-- root root - : test.txt

  drwxr-xr-x root root - : test

  [rootlocalhost test]# cd 。。

  [rootlocalhost test]# mv test/*.txt test

  [rootlocalhost test]# cd test

  [rootlocalhost test]# ll

  -rw-r--r-- root root - : log.txt

  -rw-r--r-- root root - : log.txt

  -rw-r--r-- root root - : test.txt

  drwxr-xr-x root root - : test-

  [rootlocalhost test]# cd 。。

  [rootlocalhost test]# cd test/

  [rootlocalhost test]# ll

  drwxr-xr-x root root - : logs

  drwxr-xr-x root root - : test

  [rootlocalhost test]#

  实例九:文件被覆盖前做简单备份,前面加参数-b

  mv log.txt -b log.txt

  [rootlocalhost test]# ll

  -rw-r--r-- root root - : log.txt

  -rw-r--r-- root root - : log.txt

  -rw-r--r-- root root - : test.txt

  drwxr-xr-x root root - : test-

  [rootlocalhost test]# mv log.txt -b log.txt

  mv:是否覆盖“log.txt”? y

  [rootlocalhost test]# ll

  -rw-r--r-- root root - : log.txt

  -rw-r--r-- root root - : log.txt~

  -rw-r--r-- root root - : test.txt

  drwxr-xr-x root root - : test-

  [rootlocalhost test]#

  -b 不接受参数,mv会去读取环境变量VERSION_CONTROL来作为备份策略。

  --backup该选项指定如果目标文件存在时的动作,共有四种备份策略:

  .CONTROL=none或off : 不备份。

  .CONTROL=numbered或t:数字编号的备份

  .CONTROL=existing或nil:如果存在以数字编号的备份,则继续编号备份m+.。.n:

  执行mv操作前已存在以数字编号的文件log.txt.~~,那么再次执行将产生log.txt~~,以次类推。如果之前没有以数字编号的文件,则使用下面讲到的简单备份。

  .CONTROL=simple或never:使用简单备份:在被覆盖前进行了简单备份,简单备份只能有一份,再次被覆盖时,简单备份也会被覆盖。

  上面就是Linux下mv命令的用法介绍了,通过上面的个例子相信你对mv命令有了一定的了解,如果你要进行文件移动和重命名的话,可以使用mv命令。