Mv

BSD 命令“mv”中選項“–update”的替代方案

  • March 28, 2018

我正在讀一本書“Linux命令行”,命令和“cp”

-u更新選項mv

-u, –update 將文件從一個目錄移動到另一個目錄時,僅移動不存在或比目標目錄中現有相應文件更新的文件。

該選項不包含在 BSD ‘mv’ 命令中。

有什麼替代選擇--update

您可以使用rsync而不是mv組合這兩個選項:

-u, --update                skip files that are newer on the receiver
--remove-source-files       sender removes synchronized files (non-dir)

BSD 替代方案是

[ "$target" -nt "$source" ] || mv "$source" "$target"

這將執行mvif$target不存在,或者如果它不比$source.

引用自:https://unix.stackexchange.com/questions/433998