概要
ファイルやディレクトリを別の場所へ移動するか、名前を変更します。同一ファイルシステム内の改名では特に高速に処理されることがあります。
基本構文
mv [オプション] 元 ... 先詳細解説
mvは、Linuxの基本的な整理操作を担うコマンドです。ファイル名の変更、別ディレクトリへの移動、ディレクトリ全体の場所変更など、作業対象の配置を変える時に使います。
同一ファイルシステム内では、内容コピーではなく名前や参照先の変更として扱われることが多く、高速です。一方、異なるファイルシステムをまたぐ移動では、実質的にコピーと削除に近い動きになることがあります。
重要なのは上書き事故の回避です。既存ファイルを無意識に潰さないよう、-iや-nの利用、事前確認が有効です。
このコマンドを使う場面
ファイル名を変更したい時、作業結果を別の場所へ整理したい時、ディレクトリ構成を組み替えたい時に使います。
まず安全に試す方法
1. printf "%sn" "demo" > old.txt
2. mv old.txt new.txt
3. ls -l new.txt
3分ミッション
少しでも手を動かすと定着しやすくなります。終わった項目にチェックを入れてください。
-
小さなファイルを作り、mvで名前変更して結果を確認します。
-
作成したディレクトリへファイルを移し、lsで保存先を確認します。
資格試験との関連
-
LinuC レベル1
範囲: 1.02 ファイル・ディレクトリの操作と管理根拠: officialLinuCレベル1では、基本的なファイル管理、リンク、ファイル配置と検索が主要範囲です。mvはその中核です。
-
LPIC-1
範囲: 104.7 システムファイルの検索と正しい配置根拠: officialLPIC-1では、ファイル配置、コマンド探索、基本的なファイル操作と確認が求められます。mvはその土台になります。
-
共通基礎
範囲: Linuxコマンド基礎根拠: editorial試験横断で、mvはコマンドライン操作、手順読解、トラブルシュートの基礎体力を作る項目です。
実行結果サンプル
-
printf "%sn" "demo" > old.txt mv old.txt new.txt ls -l new.txt-rw-r--r-- ... new.txt -
mkdir -p archive mv report.txt archive/完了後、archive/report.txtへ移動
戻り値コード
- 0 移動または改名に成功しました。
- >0 権限不足、対象不在、上書き拒否などで失敗しました。
使用例
mv old.txt new.txtmv report.txt archive/mv -i a.txt b.txtmv dir1 dir2
よくあるエラー
-
移動したつもりが上書きしてしまった 原因: 既存ファイル確認をせずにmvしたためです。対処: 重要ファイルではmv -iや事前確認を使います。
-
別ファイルシステム間で時間がかかる 原因: 実質的にコピーと削除に近い処理になることがあります。対処: 大容量では進捗や空き容量も考慮します。
導入・互換性情報
POSIXで基本機能は定義されています。GNU系の-nなどは実装差に注意が必要です。
- Debian GNU/Linux / 13 / GNU coreutils 9.7 / Bash 5.2.37
注意点 / セキュリティリスク
上書き事故や意図しない場所への移動が起こり得ます。特に同名ファイルが既にある場所へ移動する時は、-iやls確認を併用すると安全です。
FAQ
-
Q. mvは改名と移動のどちらですか。 A. どちらにも使います。見え方は違っても、本質的には名前や配置を変える操作です。
参照リンク
- カテゴリー: File And Directory
- レベル: Basic
- 対応試験: LinuC, LinuC レベル1, LPIC, LPIC-1, 共通基礎