rm コマンド
目的
ファイルまたはディレクトリーを除去 (リンク解除) します。
構文
説明
rm コマンドは、指定した File パラメーターのエントリーをディレクトリーから除去します。 エントリーがファイルへの最終リンクであれば、このファイルが削除されます。 あるファイルに対する書き込み許可がなく、かつ標準入力が端末である場合は、 そのファイル名が示され、そのファイルを削除したいかどうかの確認を要求されます。 次のように入力したとします。y(「はい」の場合)、ファイルは削除されます。その他の文字を入力しても、ファイルは削除されません。 削除したいファイルの読み取り許可または書き込み許可は必要ありません。 ただし、そのファイルが入っているディレクトリーの書き込み許可がなければなりません。
ファイルがシンボリック・リンクであれば、そのリンクは除去されますが、 そのシンボリック・リンクが参照するファイルまたはディレクトリーはそのままの状態です。 ディレクトリーへの書き込み許可があれば、 シンボリック・リンクを削除するための書き込み許可は必要ありません。
いずれかのファイルが.(ドット) または..(ドット、ドット) ファイルが File パラメーターのベース名部分として指定されると、rm コマンドは標準エラーに診断メッセージを書き込み、 このようなパラメーターが指定されても何も実行しないようにします。
RM コマンドは、 「-f」 フラグが指定されておらず、 ファイル パラメーターに書き込み許可がなく、標準入力がワークステーションであるか、または I フラグが指定されている場合、標準エラーにプロンプトを書き込み、標準入力から 1 行を読み取ります。 肯定応答を入力しなければ、rm コマンドは現行ファイルにはそれ以上何も実行せず、 次のファイルに進みます。
ディレクトリーにスティッキー・ビットが設定されていて、 そのディレクトリーがユーザー所有のものでない場合には、他のユーザーの所有するファイルを除去することはできません。
NFS バージョン 4 サーバー用にエクスポートされたファイルまたはディレクトリーを 除去しようとすると、失敗して、そのリソースが使用中である旨のメッセージが出されます。 ファイルまたはディレクトリーは、NFS バージョン 4 用にアンエクスポートしてから、除去する必要があります。
フラグ
| 項目 | 説明 |
|---|---|
| -e | 各ファイルの削除後にメッセージを表示します。 |
| -f | 書き込み保護ファイルを除去する前にプロンプトを表示しません。 指定されたファイルが存在しな くても、エラー・メッセージを表示せず、エラー状況を戻しません。 -f と -i フラグの両方が指定されている場合には、 最後に指定した方に影響があります。 |
| -i | 各ファイルを削除する前にプロンプトを表示します。 -i と -r フラグを一緒に使うと、 rm コマンドはディレクトリーを削除する前にもプロンプトを表示します。 -i と -f フラグの両方が指定されている場合には、最後に指定した方に影響があります。 |
| 項目 | 説明 |
|---|---|
| -r | File パラメーターにディレクトリーを指定すると、ディレクトリーとそれらの内容を再帰的に除去できます。 このフラグは -R フラグと同等です。 |
| -R | File パラメーターにディレクトリーを指定すると、ディレクトリーとそれらの内容を再帰的に除去できます。 このフラグは -R フラグと同等です。 |
終了状況
このコマンドは、以下の終了値を戻します。
| 項目 | 説明 |
|---|---|
| 0 | -f フラグを指定しなかった場合は、名前の付いたディレクトリーのエントリーすべてが除去されるか、 既存の名前の付いたディレクトリーのエントリーがすべて除去されます。 |
| >0 | エラーが発生しました。 |
セキュリティー
RBAC ユーザーおよび TrustedAIX®ユーザーの皆様へ:このコマンドは特権操作を実行できます。 特権命令を実行できるのは特権ユーザーのみです。 権限および特権について詳しくは、「セキュリティー」の『特権コマンド・データベース』を参照してください。 このコマンドに関連した特権および権限のリストについては、lssecattr コマンドまたは getcmdattr サブコマンドの項を参照してください。
例
- ファイルを削除するには、次のように入力します。
このファイルへの別のリンクがある場合、ファイルはその名前の下に残りますが、名前はmyfile削除されます。 指定する場合は、myfile唯一のリンクです。ファイル自体が削除されます。rm myfile - 最初に確認プロンプトを受け取らずにファイルを削除するには、次のように入力します。rm -f core-f名前のファイルを削除しようとする前に、確認のプロンプトは表示されないcore. ただし, エラー・メッセージが表示されます。coreファイルが書き込み保護されていて、ユーザーがファイルの所有者でないか、またはユーザーに root 権限がありません。 rm -f コマンドが存在していないファイルを除去しようとしたときは、 エラー・メッセージは表示されません。
- ファイルを 1 つずつ削除するには、次のように入力します。rm -i mydir/*各ファイル名が表示されたら、次のように入力します。yファイルを削除するか, あるいは実行キーを押してファイルを保存してください。
- ディレクトリー・ツリーを削除するには、次のように入力します。
このコマンドは, システムのすべてのサブディレクトリーの内容を再帰的に除去します。manual各ファイルの除去に関するプロンプトが出され, その後で除去されます。manualディレクトリー自体。以下に例を示します。rm -ir manual
ここでは、 RM コマンドにより、最初に検索するかどうかを尋ねられます。manualディレクトリー。 Because themanualディレクトリーにディレクトリーが含まれている場合、 RM コマンドは次に検索の許可を要求します。manual/draft1ファイルを削除するかどうかを確認します。次に、削除するかどうかを確認します。manual/draft1/chapter1およびmanual/draft1/chapter2ファイルのみ。 次に、 RM コマンドは、以下を検索するための許可を要求します。manual/draft2ディレクトリー。 次に、以下を削除する許可を要求します。manual/draft1,manual/draft2およびmanual ディレクトリー。You: rm -ir manual System: rm: Select files in directory manual? Enter y for yes. You: y System: rm: Select files in directory manual/draft1? Enter y for yes. You: y System: rm: Remove manual/draft1? You: y System: rm: Remove manual/draft1/chapter1? You: y System: rm: Remove manual/draft1/chapter2? You: y System: rm: Select files in directory manual/draft2? Enter y for yes. You: y System: rm: Remove manual/draft2? You: y System: rm: Remove manual? You: yサブディレクトリーを削除する許可を拒否した場合は、以下のようになります。manual/draft2) の場合、 RM コマンドは、manualディレクトリー。 代わりに、次のメッセージが表示されます。rm: Directory manual not empty.
ファイル
| 項目 | 説明 |
|---|---|
| /usr/bin/rm | rm コマンドが入っています。 |