linux mv 指令报错mv: Directory not empty
发生在移动的源目录和目标目录下存在同名的情况下,这种情况下可以手动处理,比如改名等,但有时我们想像windows下一样能合并同名的文件夹
- 改为
rsync -a <src> <dst>
- 如果要详细信息可以加上
v
参数 - 同步的同时删除原目录的文件`–remove-source-files
- 完整命令
rsync -av --remove-source-files <src> <dst>
- 如果嫌麻烦可以alias 定义指令
alias mvs='_script(){ rsync -av --remove-source-files $1 $2 ;};_script'
- 调用
mvs <src> <dst>
命令参数
-v, --verbose 详细模式输出
-q, --quiet 精简输出模式
-c, --checksum 打开校验开关,强制对文件传输进行校验
-a, --archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD
-r, --recursive 对子目录以递归模式处理
-R, --relative 使用相对路径信息
-u, --update 仅仅进行更新,也就是跳过所有已经存在于DST,并且文件时间晚于要备份的文件。(不覆盖更新的文件)
-t, --times 保持文件时间信息