私が知っているのは、
rmdir directoryname
ディレクトリを削除することだけですが、空の場合。サブディレクトリを強制的に削除する方法はありますか?
回答
次のコマンドで実行できます。 。ただし、注意してください。
rm -rf directoryname
コメント
より安全な"は相対的です。リモートコンピューターで実行するスクリプトを作成しているとします。そのスクリプトには、ディレクトリを削除することになっているコマンドがあります。ここでは、rm -rf directoryname
cozを使用する方が"安全"になります'スクリプトはユーザー入力を待機しているため、スクリプトの実行を一時停止したくありません。'もちろん、ディレクトリを削除しても害がないことを確認する必要があります。
回答
if rm -rf directoryname
で失敗する場合は、rm -R -f directoryname
またはrm --recursive -f directoryname
を使用してみてください。
これらに問題がある場合は、rmの再インストールまたはシェルの切り替えを検討する必要があります。
コメント
- これらは私のrmで利用可能なオプションでした。マニュアルページで、
man rm
と入力して検索し、再帰的削除のオプションと force オプションを表示しました。 - div id = “ef140c56fb”>
マニュアルページリスト-r
?それは何をするためのものか? (テスト目的で作成したディレクトリで、ダミーファイル(および場合によってはサブディレクトリ)のみを使用して試してください。)使用しているオペレーティングシステムは何ですか?
rm -r
が機能しない場合'は、シェルの問題ではなく、OSの問題です。 (厳密に言えば、使用しているrm
のバージョンに問題があるため'をインストールすることで、問題に対処できます。別のバージョンのrm
、またはシステムを検索して、ivid以外のディレクトリに別のバージョンのrm
があるかどうかを確認します= “020ac1d181″> 。)
man rm
を実行すると、テキストビューア。スクロールして、全体が -R および-recursive オプションと -r オプションを組み合わせたインデントされたエントリを見つけました。これらの引数はすべて同じです。
sudo rm -r directoryName
を試しましたか?基本コマンドの不文律は、-r
を使用すると、ファイルシステムのすべてのファイルでプログラムを再帰的に実行でき(選択した場所から開始できます)、-fで強制的に処理を実行できます。 'の危険であっても。 ' cd '、' mv '、' ls ' ほとんどはこの原則に当てはまります。 ls -r /
はduzieになり、cp -rf / /dev/null
はファイルシステム上のすべてを破壊します。 <-そのコマンドは絶対に実行しないでください!
rm -r directoryname
です。rm: invalid option -- r
エラーが発生します。 rm -r <ディレクトリ名>を使用してディレクトリを削除しようとしています。