在管理 Linux 文件的时候,mv 命令最主要的两种用法就是重命名和文件的移动。文件移动的时候,如果目标文件夹里有同名文件了怎么办,弹出提示还是直接覆盖,本文给大家介绍几个常用的参数,我们可以更灵活地使用该命令。
-v
:显示具体操作的内容。默认情况下,mv 命令成功运行之后不会有任何的提示,如果使用了 -v 参数,运行之后会把具体的操作列出来。
-i
:交互提示。移动的过程中,如果目标文件夹里已经有同名的文件,使用了 -i 参数,运行的时候会提示覆盖还是跳过。
从示例中可以看出,当我们同意覆盖的时候,本地文件夹里的 a.txt 已经移动过去了,我们选择不覆盖的时候,a.txt 还保留在本地文件夹。
-u
:留下最新的文件。在移动的过程中,会判断哪个文件最后的修改时间更新一点,就会保留哪个文件。
从示例中可以看出,Video 目录下的 a.txt 是刚刚新建的,比 Public 文件夹里的 a.txt 最后修改时间要更新,所以覆盖移动。
-n
:不覆盖任何的文件。不管什么情况,不覆盖目标文件夹里的文件。
从示例中可以看出,a.txt 文件没有移动。不过 -v 命令也没有弹出任何的提示。
-f
: 强制覆盖目标文件夹里的文件。
默认的情况下,会自动覆盖目标文件夹里的重名文件,一些系统会自动创建一个 alias,把 -i 参数带上了,此时可以使用 -f 强制覆盖。
-b
:覆盖文件的时候,备份旧文件,旧文件的文件名后面会多一个“~”。
从示例中可以看出,目标文件夹里的 a.txt 文件被重命名为 a.txt~了。
扩展阅读: