カテゴリ: Linuxコマンド集 更新日: 2025/12/19

mv -iオプションの使い方|上書き前に確認する安全なファイル移動方法

mv -iオプション|上書き前に確認する安全な移動方法
mv -iオプション|上書き前に確認する安全な移動方法

先生と生徒の会話形式で理解しよう

生徒

「Linuxのmvコマンドでファイルを移動したら、上書きされて大事なファイルが消えちゃいました…」

先生

「それは大変だったね。でも、-iオプションを使えば、上書きする前に確認できるようになるよ。」

生徒

「それなら安心ですね!具体的にどうやって使うんですか?」

先生

「それじゃあ、mv -iオプションの使い方をわかりやすく解説していこう!」

1. mvコマンドとは?

1. mvコマンドとは?
1. mvコマンドとは?

mvコマンドは、Linuxでファイルやディレクトリを移動(または名前変更)するために使う基本的なコマンドです。例えば、「Aという場所にあるファイルをBという場所に移す」といった操作ができます。また、ファイルの移動と同時に名前の変更もできるのが特徴です。

2. -iオプションとは?

2. -iオプションとは?
2. -iオプションとは?

-iオプションは「interactive(対話的)」の略で、上書きされるかもしれないときに、ユーザーに確認してから実行するという安全機能です。

通常、mvコマンドで同じ名前のファイルが移動先にあると、何の確認もなく上書きされてしまいます。でも-iを付けると、以下のように「上書きしてもいいですか?」と聞いてくれます。

3. mv -iの基本的な使い方

3. mv -iの基本的な使い方
3. mv -iの基本的な使い方

例えば、同じディレクトリに同名ファイルがある場合に使ってみましょう。


mv -i sample.txt backup/sample.txt
mv: overwrite 'backup/sample.txt'?

このとき「y」を押せば上書きされ、「n」を押せば中止されます。うっかり消してしまう事故を防げる便利なオプションですね。

4. 実際に試してみよう:ファイルがある場合とない場合の違い

4. 実際に試してみよう:ファイルがある場合とない場合の違い
4. 実際に試してみよう:ファイルがある場合とない場合の違い

まず、同じ名前のファイルがない場合は、確認なくそのまま移動されます。


mv -i report.txt documents/report.txt

移動先にreport.txtが存在しなければ、確認は出ずに普通に移動されます。

一方で、ファイルが既に存在する場合は以下のようになります。


mv -i report.txt documents/report.txt
mv: overwrite 'documents/report.txt'?

このように、上書き前に確認があるため、ミスを防ぐことができます。

5. rmコマンドとの違いに注意!

5. rmコマンドとの違いに注意!
5. rmコマンドとの違いに注意!

mvは「移動」や「名前変更」のコマンドですが、rmは「削除」です。間違えてrmを使ってしまうとファイルは完全に削除され、戻せません。

mvコマンドなら間違えてもまだファイルは残っており、しかも-iを使えば上書きの確認もできます。

6. -iオプションを常に有効にする方法(エイリアスの活用)

6. -iオプションを常に有効にする方法(エイリアスの活用)
6. -iオプションを常に有効にする方法(エイリアスの活用)

毎回mv -iと打つのが面倒な場合、エイリアスという設定を使うことで、mvと打っただけでmv -iが自動で実行されるようにできます。


alias mv='mv -i'

この設定を~/.bashrc~/.bash_profileに書いておけば、ログイン時に自動で反映されるようになります。

7. 他のオプションとの組み合わせ例

7. 他のオプションとの組み合わせ例
7. 他のオプションとの組み合わせ例

mvには他にも便利なオプションがあります。以下は代表的な組み合わせ例です。

  • -v(verbose):どのファイルが移動されたかを表示
  • -n(no-clobber):既存ファイルがある場合は上書きしない

例:-i-vを一緒に使って、確認しながら処理の内容も表示する


mv -iv report.txt backup/
mv: overwrite 'backup/report.txt'? y
'report.txt' -> 'backup/report.txt'

8. mv -iとmv -nの違い

8. mv -iとmv -nの違い
8. mv -iとmv -nの違い

-iと似た機能に-nがあります。-n確認もせずに上書きしない、つまり「何もしない」という動きになります。


mv -n report.txt backup/report.txt

この場合、移動先に同じ名前のファイルがあれば、mvはそのまま無視して何も実行しません。自動スクリプトなどで誤って上書きしたくないときに便利です。

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

mvコマンドとは何ですか?Linuxでどんな役割を持っているのですか?

mvコマンドは、Linuxでファイルやディレクトリを移動したり名前を変更したりするための基本的なコマンドです。移動だけでなく、リネーム操作も行える便利な機能です。
関連記事:
カテゴリの一覧へ
新着記事
New1
テキスト・データ処理
grep -hオプションの使い方|ファイル名を表示せずに一致行だけを出力する方法
New2
ファイル・ディレクトリ操作
find -mindepthオプションの使い方を完全ガイド!検索の最小深さを指定して効率よくファイル検索
New3
ファイル・ディレクトリ操作
Linuxのlsコマンド-iオプション完全ガイド!初心者でもわかるi-node番号の表示方法
New4
ファイル・ディレクトリ操作
stat --dereferenceオプションの使い方を解説|-Lと同じようにシンボリックリンク先の情報を表示しよう
人気記事
No.1
Java&Spring記事人気No1
ファイル・ディレクトリ操作
findコマンドの使い方を完全ガイド!初心者でもわかるLinuxのファイル検索の基本
No.2
Java&Spring記事人気No2
テキスト・データ処理
grepコマンドとは?Linuxで文字列を検索する基本をやさしく解説!
No.3
Java&Spring記事人気No3
ファイル・ディレクトリ操作
cd ~ の使い方を完全解説!ホームディレクトリへの移動方法と初心者向けLinuxコマンド入門
No.4
Java&Spring記事人気No4
ファイル・ディレクトリ操作
statコマンドとは?Linuxでファイルやディレクトリの詳細情報を確認する基本