rm -iオプションとは?初心者でも安心のLinuxファイル削除コマンド解説
生徒
「Linuxでファイルを削除するとき、間違って大事なファイルを消しちゃいそうで怖いです……安全に削除する方法ってないですか?」
先生
「それならrm -iオプションを使うのがいいですね。削除前に確認のメッセージが出るようになりますよ。」
生徒
「それなら安心して使えそうです!詳しく教えてください!」
先生
「では、rm -iの基本的な使い方と注意点を一緒に見ていきましょう。」
1. rmコマンドとは?
rmコマンドは、Linux(リナックス)でファイルやディレクトリを削除するためのコマンドです。「削除」とは、パソコンのゴミ箱のようなところに入れるのではなく、完全に消してしまうことを意味します。
間違えて実行すると元に戻せないので、初心者が使うときは特に注意が必要です。
2. -iオプションとは?
-iオプションは、interactive(インタラクティブ)モードの略で、「対話形式で操作する」という意味です。rm -iを使うと、ファイルを削除する前に「本当に削除しますか?」という確認メッセージが表示されます。
この確認によって、うっかり大事なファイルを削除するミスを防げるのです。
3. 実際にrm -iを使ってみよう
たとえば「test.txt」というファイルを削除するときは、以下のように入力します。
rm -i test.txt
rm: remove regular file 'test.txt'?
このように「削除してもいいですか?」と表示されます。
このあと、以下のように入力することで操作が決まります。
yを入力すると削除されます(yesの意味)。nを入力すると削除されません(noの意味)。
4. rm -iを複数のファイルに使う
複数のファイルを一気に削除する場合でも、-iオプションを付けることで、1つずつ確認が表示されます。
rm -i file1.txt file2.txt file3.txt
rm: remove regular file 'file1.txt'?
rm: remove regular file 'file2.txt'?
rm: remove regular file 'file3.txt'?
このように、一つ一つ確認しながら削除できます。
5. rm -iとワイルドカードの組み合わせ
「*.txt」のように「アスタリスク(*)」を使って、特定の種類のファイルをまとめて指定することができます。
例えば、カレントディレクトリにあるすべての「.txt」ファイルを削除したいときは、次のようにします。
rm -i *.txt
rm: remove regular file 'a.txt'?
rm: remove regular file 'b.txt'?
rm: remove regular file 'note.txt'?
1つずつ削除するか聞いてくれるので、間違って消すことがありません。
6. rm -iとディレクトリ削除の違い
rm -iはファイル用の確認です。ディレクトリ(フォルダ)を削除したい場合は、-r(再帰的に削除)というオプションと組み合わせます。
その際に安全に削除するには、-iと-rを組み合わせて使います。
rm -ri myfolder
rm: descend into directory 'myfolder'?
rm: remove regular file 'myfolder/sample.txt'?
フォルダの中身も1つずつ確認しながら削除できるので、安心です。
7. -fとの違いに注意!
-fオプションは、force(強制)の意味で、確認なしで削除します。間違って使うと、取り返しのつかない事態になります。
rm -fは初心者が絶対に使ってはいけないオプションです。
安全第一で使うなら、-iをつけましょう。
8. 削除対象をlsで確認してからrm -i
削除する前に「ls」コマンドで、対象のファイルが何かを確認しておくとより安全です。
ls *.log
access.log error.log system.log
そして、確認した上でrm -iを使えば、安心して削除できます。
9. よく使う組み合わせ:aliasでrmを安全化
毎回-iをつけるのが面倒な人は、rmコマンド自体をrm -iとして動くように設定しておくと便利です。
alias rm='rm -i'
この設定をターミナルに入力すると、次回からrmとだけ入力しても自動で確認が出るようになります。設定を恒久的にするには、.bashrcや.bash_profileに追記します。