cpコマンドのオプションや方法などはありますでしょうか。
バックアップ作業をさせているのですが、前はPHPで配列を作って差分を見てとかいうめんどくさいことをしていたのですが・・、フォルダごとコピーするスクリプトを書くのに、もっとシンプルな方法があるはずだという思いで質問をしています。
cpコマンドのオプション?の読み方を間違っているだけかもしれませんが。
ふつうのcpにはそういうオプションはないのですが、gnu cpにはあります。rsyncなどと同じように、同名ファイルがある場合、作成時期がより新しくないとコピー上書きしません。
cp -u
ですね。
cp単体ではたしか無理ですよ
rsyncで対応するのがシンプルだと思います
http://www.itmedia.co.jp/enterprise/articles/0804/21/news013.htm...
>cp単体ではたしか無理ですよ
単純に「同名はコピーしない」ということと「バックアップが目的」ということに反応してrsyncを回答しましたが、
「同名は日付を比較して、コピー先のほうが古ければ上書き」の場合は cpコマンドの -u オプションを使ってもよかったですね
もし、「とにかく同名のファイルがあったらファイルが新しくなっても上書きしない」なら、yes コマンドを使って、
$ yes no | cp -ri srcdir/* dst/ >/dev/null 2>&1
とすれば出来るけど、実用性は無さそう(^^;。
# yes コマンドに「no」という文字列を引数を渡すのは、なんかシュール...。
コマンド例をありがとうございます。