追記
環境はMacOSです。Linuxでは問題がないと言うことでしたので。
それでさらに、念の為whichで確認したところ以下のように、coreutilsの物になっていました。
混乱させてしまいまして申し訳ないですが、以前に入れていたのを忘れていました。
/usr/local/opt/coreutils/libexec/gnubin/cp
/usr/local/opt/coreutils/libexec/gnubin/mv
先頭に追記させていただきます。
本文
cpさせる時に、移動先に同名のファイルがあると、cpが失敗するので、
失敗しない方法を探しました。
--backupを付ければよいこと、接尾辞を指定できることがわかりました。
以下のコマンドです。
cp --backup --suffix=_$(date +%Y%m%d_%H%M%S) ./conflict.txt ./test
しかし、ここでわからないことが起きました。
最初は、何度試しても明示したsuffixが付かず、以下の結果になりました。
このときは、最初に↓このsuffixをつけずに--backupだけで実行していて、
cp --backup ./conflict.txt ./test
そうすると、
既にデフォルトのサフィックスがついたバックアップファイルがある場合は、サフィックスが無視されるようでした。
それで質問なんですが、
これを回避できるように、デフォルトのサフィックスがついたバックアップがあったとしても、追加したsuffixが適用されるようにするにはどうしたらいいでしょうか?
conflict.txt conflict.txt~ conflict.txt.~1~ conflict.txt.~2~ conflict.txt.~3~ conflict.txt.~4~ conflict.txt.~5~
一応、デフォルトのサフィックスがついたファイルがない場合は、以下の通り正常に働きました。
↓
ls
1conflict.txt 2conflict.txt_20181109_204815 3conflict.txt_20181109_204819 4conflict.txt_20181109_204820 5conflict.txt_20181109_204821
回答1件
あなたの回答
tips
プレビュー