2014年2月22日土曜日

Mac: 同一名フォルダをドラッグアンドドロップし元ファイルよりも新しいファイルに影響なくコピーするには

結論:

ショートカットキーやマウス操作+オプションキーではできません。


代替策:


Terminalからrsyncコマンドにupdateオプション(-u、更新された対象のみ同期)をつけて実行することで可能です。

rsyncはファイルやディレクトリをバックアップ/同期するためのコマンドとなっています。rsyncの利点はパーミッションなどを維持して同期できること、更新された対象など細かく設定し、ディレクトリ毎または配下をバックアップ、同期できます。


updateオプションでは、rsyncで指定されたディスティネーションにある同一ファイルがソースよりも新しい場合スキップします。

手順:

例:Folder1
フォルダー毎同期したい場合
~/Desktop/Folder1/test1.odt,test3.odt
~/Desktop/Destination/Folder1/test1.odt,test2.odt


1. Launchpadのその他からTerminalを起動し、以下のコマンドを実行します。
2. rsync -av -u ~/Desktop/Folder1 ~/Desktop/Destination


タイムスタンプと中身は結果は以下の通り、タイムスタンプを見ていただくと分かると思います。test1.odtは上書きされませんでした。

~/Desktop/Destination/Folder1/test1.odt,test2.odt,test3.odt


コマンドオプションを確認するには:

その他:

  • manコマンドを終了するには control + v, q

注意点:

  1. ドラッグアンドドロップ時にオプションキーを押下して結合(マージ)した場合で同一ファイル名がドロップ先にある場合は新しいバージョンであっても無条件にソース元で上書きされてしまいます。
  2. OSXの場合、cpコマンドにはupudateオプション(-u)がありません。

0 件のコメント:

コメントを投稿