この記事では、Linuxコマンドのmvコマンドの使い方について解説します。
mvコマンドを使うことで、ファイルやディレクトリの移動や名前変更を行うことができます。
今回掲載しているコマンドはUbuntu 24.04.1で確認しました!
mvコマンドの使い方
mvコマンドを使うと、ファイルやディレクトリの移動と名前変更ができます。
基本的な構文は下記のようになります。
ファイルの移動:
$ mv (オプション) 移動元 移動先
ディレクトリの移動:
$ mv (オプション) 移動元ディレクトリ/ 移動先ディレクトリ/
ファイルの名前変更:
$ mv (オプション) 現在のファイル名 新しいファイル名
実際に使ってみる
実際に使ってみます。
まず、lsコマンドで確認すると、下記のようなファイルが存在します。
$ ls -l
total 4
-rw-r--r-- 1 root root 7 Jan 21 13:22 source.txt
mvコマンドを使って、source.txtファイルをtest.txtという名前に変更してみます。
$ mv source.txt test.txt
source.txtファイルがtest.txtという名前に変更されました。
実行後にlsコマンドで確認すると、下記のようにファイル名が変わっていることがわかります。
$ ls -l
total 4
-rw-r--r-- 1 root root 7 Jan 21 13:22 test.txt
次に、test.txtファイルをbackupディレクトリに移動してみます。
まず、移動先のディレクトリを作成します。
$ mkdir backup
そして、mvコマンドでファイルを移動します。
$ mv test.txt backup/
実行後にそれぞれのディレクトリの中身を確認すると、test.txtがbackupディレクトリに移動したことがわかります。
$ ls -l
total 4
drwxr-xr-x 2 root root 4096 Jan 21 13:24 backup
$ ls -l backup/
total 4
-rw-r--r-- 1 root root 7 Jan 21 13:22 test.txt
mvコマンドのサンプル4つ
mvコマンドを使ったサンプルを4つ紹介します。
ディレクトリごと移動する
ディレクトリを移動するには、特にオプションは必要ありません。
$ mv source_dir/ destination_dir/
上書き確認をする
既存のファイルを上書きする前に確認するには-iオプションを使います。
$ mv -i source.txt destination.txt
ファイルがない場合は、確認がなく名前変更されます。
ファイルがある場合には、下記のように確認が出るため、yを入力してエンターを押すと上書きされます。
$ mv -i source.txt destination.txt
mv: overwrite 'destination.txt'?
destination.txtという名前のファイルにsource.txtの内容が反映されます。
強制的に上書きする
上書き確認をせずに強制的に上書きするには-fオプションを使います。
$ mv -f source.txt destination.txt
複数のファイルを一度に移動する
複数のファイルを一度にディレクトリに移動することができます。
$ mv file1.txt file2.txt file3.txt destination_dir/
mvコマンドのオプション一覧
| オプション | 説明 |
|---|---|
--backup[=CONTROL] |
既存の各宛先ファイルのバックアップを作成します。CONTROLには、バックアップ方法を指定できます(none, numbered, existing, simpleなど)。 |
-b |
--backupと同様ですが、引数を受け付けません。デフォルトのバックアップ方法を使用します。 |
--debug |
ファイルがどのようにコピーされるかを説明します。-v(verbose)オプションを暗黙的に含みます。 |
-f, --force |
上書き前に確認を求めません。強制的に上書きします。 |
-i, --interactive |
上書き前に確認を求めます。 |
-n, --no-clobber |
既存のファイルを上書きしません。 |
--no-copy |
名前変更が失敗した場合、コピーを行いません。 |
--strip-trailing-slashes |
各SOURCE引数から末尾のスラッシュを削除します。 |
-S, --suffix=SUFFIX |
通常のバックアップサフィックスを上書きします。SUFFIXで指定した文字列がバックアップファイルの末尾に付加されます。 |
-t, --target-directory=DIRECTORY |
すべてのSOURCE引数をDIRECTORYに移動します。 |
-T, --no-target-directory |
DESTを通常のファイルとして扱います。通常、DESTがディレクトリの場合、SOURCEはDEST内に移動されますが、このオプションを指定すると、DESTがファイルとして扱われます。 |
--update[=UPDATE] |
どの既存ファイルを更新するかを制御します。UPDATEには、all(すべて更新)、none(更新しない)、older(デフォルト。移動元ファイルが移動先ファイルよりも新しい場合のみ更新)を指定できます。 |
-u |
--update[=older]と同等です。移動元ファイルが移動先ファイルよりも新しい場合のみ移動します。 |
-v, --verbose |
実行中の操作を説明します。詳細な情報を出力します。 |
-Z, --context |
宛先ファイルのSELinuxセキュリティコンテキストをデフォルトタイプに設定します。 |
--help |
ヘルプメッセージを表示して終了します。 |
--version |
バージョン情報を出力して終了します。 |
mvコマンドの使い方まとめ
今回はmvコマンドについて解説しました。
記事の内容をまとめると、下記のようになります。
・`mv`コマンドでファイル名の変更もできた

コメント