サーバ上でディレクトリのコピーをする際に、-f オプションを付けているにも関わらずファイルの上書き確認が出るので何でだろうと思っていました。
1 2 | $ cp -rf /tmp/images /var/www cp: overwrite ‘/var/www/images/a.gif’? |
よくよく調べてみると、alias で cp コマンドは cp -i にするとなっていました。原因はこの -i オプションのせいだったようです。
1 2 | $ alias alias cp='cp -i' |
下記のサイトの「同名のコマンドが存在する場合の優先順位」にある通り、エイリアスの内容が最優先されるようですね。
コマンドエイリアスの無効化
これを無効化するには、コマンドの最初にバックスラッシュを付けて実行します。
1 | $ \cp -rf /tmp/images /var/www |
確かにサーバ上で cp コマンドを使う機会はそれほど多くなかったですが、今まで全く気付きませんでした。