BSD 명령 "mv"의 "--update" 옵션에 대한 대안

BSD 명령 "mv"의 "--update" 옵션에 대한 대안

"Linux Command Line" 책을 읽고 있는데 "cp"에 대한 명령 과 업데이트된 옵션이
있습니다 .-umv

-u, --update 한 디렉터리에서 다른 디렉터리로 파일을 이동할 때 대상 디렉터리에 존재하지 않거나 기존 해당 파일보다 최신인 파일만 이동합니다.

이 옵션은 BSD 'mv' 명령에 포함되지 않습니다.

대안은 무엇입니까 --update?

답변1

당신은 그것을 사용할 수 있습니다rsyncmv이 두 가지 옵션을 결합하는 대신 :

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

답변2

BSD의 대안은

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

존재하지 않거나 그보다 최신이 아닌 mv경우 이렇게 하면 됩니다 .$target$source

관련 정보