ウェブサイト検索

Linux で「rm -rf」コマンドは実際に何をするのでしょうか?


rm コマンド は、Linux システム上のファイルまたはディレクトリを削除するための UNIX および Linux のコマンド ライン ユーティリティです。この記事では、Linux で実際に\rm -rf コマンドで何ができるのかをわかりやすく説明します。

さらに、ファイルの削除、ディレクトリの削除、複数のファイルまたはディレクトリの削除、確認のプロンプト、ファイルの再帰的削除、ファイルの強制削除などの役立つ例をいくつか紹介します。

rm コマンドも Linux システムで頻繁に使用されるコマンドの 1 つですが、この記事の後半で説明する危険なコマンドでもあります。

Linux でファイルを削除する方法

デフォルトでは、rm コマンドはコマンドラインで指定されたファイルのみをすぐに削除し、ディレクトリは削除しません。

$ mkdir -p tecmint_files
$ touch tecmint.txt
$ rm tecmint.txt
$ rm tecmint_files

Linux で複数のファイルを削除する方法

複数のファイルを一度に削除するには、ファイル名を 1 つずつ指定するか (例: file1 file2)、パターンを使用して複数のファイルを削除します (例: で終わるパターン) .txt) を一度に実行します。

$ rm tecmint.txt fossmint.txt  [Using Filenames]
$ rm *.txt                     [Using Pattern] 

Linux でディレクトリを削除する方法

ディレクトリを削除するには、-r または -R スイッチを使用できます。これにより、rm にコンテンツを含むディレクトリを再帰的に削除するように指示されます (サブ-ディレクトリとファイル)。

$ rm tecmint_files/
$ rm -R tecmint_files/

確認プロンプトを表示してファイルを削除する方法

ファイルの削除中に確認を求めるプロンプトを表示するには、次のように -i オプションを使用します。

$ rm -i tecmint.txt

確認プロンプトを表示してディレクトリを削除する方法

ディレクトリとそのサブディレクトリを削除するときに確認を求めるには、次のように -R および -i オプションを使用します。

$ rm -Ri tecmint_files/ 

ファイルまたはディレクトリを強制的に削除する方法

ファイルまたはディレクトリを強制的に削除するには、オプション -f を使用して、rm による確認プロンプトを表示せずに削除操作を強制できます。たとえば、ファイルが書き込みできない場合、rm はそのファイルを削除するかどうかを尋ねるプロンプトを表示します。これを回避して操作を実行するだけです。

$ rm -f tecmint.txt

-r フラグと -f フラグを組み合わせると、確認を求めるプロンプトを表示せずにディレクトリ (およびその内容) を再帰的かつ強制的に削除することを意味します。

$ rm -rf fossmint_files

削除中に情報を表示する方法

ファイルまたはディレクトリを削除するときに詳細情報を表示するには、-v オプションを使用します。これにより、rm コマンドが標準出力に何が行われているかを表示できるようになります。

$ rm -rv fossmint_files

rm -Rf/コマンドを学ぶ

\rm -rf は最も危険なコマンドの 1 つであることを常に念頭に置いてください。Linux システムでは、特に root としては決して実行できません。次のコマンドは、コンピュータ上のすべてをクリアします。 root(/) パーティション。

# rm -rf  /

Linux で rm コマンドのエイリアスを作成する

安全対策として、-i オプションを使用して、ファイルまたはディレクトリを削除するたびに、rm で削除操作の確認を常に求めるようにすることができます。これを永続的に構成するには、$HOME/.bashrc ファイルにエイリアスを追加します。

alias rm="rm -i"

変更を保存してファイルを終了します。次に、図のように .bashrc ファイルをソースするか、新しいターミナルを開いて変更を有効にします。

$ source $HOME/.bashrc 

これは単に、rm を実行するたびに、デフォルトで -i オプションを使用して呼び出されることを意味します (ただし、-f フラグを使用すると、この設定をオーバーライドします)。

$ rm fossmint.txt
$ rm tecmint.txt

rm はファイルを削除しますか?

実際、rm コマンドはファイルを削除するのではなく、ディスクからのリンクを解除しますが、データはまだディスク上にあり、Foremost などのツールを使用して復元できます。

本当にシュレッドしたい場合は、コマンドラインツールを使用してファイルを上書きし、その内容を非表示にします。

それでおしまい!この記事では、非常に役立つ rm コマンド の例をいくつか説明し、Linux で \rm -rf コマンドができることについても詳しく説明しました。ご質問がある場合は、 、または共有する追加については、以下のコメント フォームを使用してご連絡ください。