cygwin 環境の Windows 環境で 1 つのシェル スクリプトを実行しています。このスクリプトには、特定の条件に基づいてシステム上の特定のフォルダーを削除するパージ機能が 1 つあります。
削除するすべてのフォルダーのリストを準備してから、次のコマンドを使用します。
rm -rfv $purge (where purge is the list of directories I want to delete)
このスクリプトをテストしたところ、ディレクトリはまったく削除されませんでした。最初はパージリストによる問題があると思っていましたが、デバッグ中にパージリストが問題ないことがわかりました。
多くのデバッグと試行の後、コマンドに小さな変更を加えました:
\rm -rfv $purge
それは一種のヒットと試行であり、スクリプトは正常に機能し始めます。私が知る限り、 \rm と rm -f はどちらも強制削除を意味します。
なぜ「rm -f」が以前に機能していたが、「\ rm -f」が機能したのか、これをどのように正当化できますか。これら 2 つのコマンドの基本的な違いを知りたいです。