rm -f file と rm file || true に差はある?
bash で file
という名前のファイルを削除したいが、そのファイルが存在しなかったときも終了ステータスを 0
にしたいと思い、rm -f file
を使いました。しばらくして、とある方が同じ目的で rm file || true
を使っていることを知りました。私の環境ではどちらの場合もスクリプト実行後の $?
が 0
になってくれたのですが、それ以外の違いがあるのか、man
を見てもよく分かりませんでした。
質問: rm -f file
と rm file || true
の挙動に何か違いはありますか? 特定の環境における差でも構いません。
私の環境: bash 4.3.48(1)-release (x86_64-pc-linux-gnu), rm (GNU coreutils) 8.25