Caution
お使いのブラウザはJavaScriptが実行できない状態になっております。
当サイトはWebプログラミングの情報サイトの為、
JavaScriptが実行できない環境では正しいコンテンツが提供出来ません。
JavaScriptが実行可能な状態でご閲覧頂くようお願い申し上げます。
cp / mv / rm
『cp』はファイルやディレクトリのコピー、『mv』は移動またはリネーム、『rm』は削除を行うコマンドです。ファイル操作の基本として頻繁に使用します。
構文
cp [オプション] コピー元 コピー先 mv [オプション] 移動元 移動先 rm [オプション] ファイル...
オプション一覧
| コマンド / オプション | 概要 |
|---|---|
| cp ファイル コピー先 | ファイルを指定した場所にコピーします。 |
| cp -r ディレクトリ コピー先 | ディレクトリを再帰的にコピーします。 |
| cp -p ファイル コピー先 | パーミッション・タイムスタンプなどの属性を保持してコピーします。 |
| cp -i ファイル コピー先 | 上書き前に確認プロンプトを表示します。 |
| cp -u ファイル コピー先 | コピー先より新しいファイルだけコピーします。 |
| mv ファイル 移動先 | ファイルを移動します。移動先が同じディレクトリならリネームになります。 |
| mv -i ファイル 移動先 | 上書き前に確認プロンプトを表示します。 |
| rm ファイル | ファイルを削除します。 |
| rm -r ディレクトリ | ディレクトリを再帰的に削除します。 |
| rm -f ファイル | 確認なしで強制削除します。存在しないファイルもエラーにしません。 |
| rm -rf ディレクトリ | ディレクトリを強制的に再帰削除します。取り消しできないため十分注意してください。 |
| rm -i ファイル | 削除前に確認プロンプトを表示します。 |
サンプルコード
以下のディレクトリ構造を例に説明します。
ファイルをコピーします。
cp file.txt backup.txt ls
archives backup.txt file.txt src
ディレクトリをまるごとコピーします。『-r』オプションが必要です。
cp -r src/ src_backup/ ls
archives backup.txt file.txt src src_backup
属性を保持してコピーします(バックアップなどに使います)。
cp -rp src/ backup/
ファイルを別のディレクトリに移動します。
mv file.txt archives/ ls
archives backup.txt src src_backup
ファイルをリネームします(同じディレクトリ内での移動)。
mv backup.txt old_backup.txt ls
archives old_backup.txt src src_backup
ファイルを削除します。
rm old_backup.txt ls
archives src src_backup
ワイルドカードで拡張子ごと削除します。
rm *.log
ディレクトリを中身ごと強制削除します。
rm -rf src_backup/ ls
archives src
概要
『rm -rf』は確認なしにディレクトリを丸ごと削除するため、パスを間違えると重大な事故につながります。特に変数を含むパス(例:『rm -rf $DIR/』)を使う場合、変数が空の場合に『rm -rf /』と解釈されないよう、ダブルクォートで囲む(『"$DIR"』)か、変数が空でないことを確認してから実行してください。
ファイルの詳細情報確認には『ls』を参照してください。
記事の間違いや著作権の侵害等ございましたらお手数ですがこちらまでご連絡頂ければ幸いです。