このページで解説している内容は、以下の YouTube 動画の解説で見ることができます。

ファイルやディレクトリを移動する:mvコマンド:mvコマンド

mvコマンドとは

 mvコマンドは、ファイルやディレクトリを移動または名前変更するための基本的なコマンドです。cpコマンドと使い方が似ていますが、mvはコピーではなく移動を行うため、元のファイルやディレクトリは削除されます。移動先がファイルかディレクトリかによって、動作が変わります。ここでは、mvコマンドの基本的な使い方やオプションについて、具体的な例を交えて解説します。

mvコマンドの基本

【書式】
mv [オプション] <移動元>… <移動先>

  • 移動元:移動または名前変更したいファイルやディレクトリを指定します。複数指定可能です。
  • 移動先:移動先のファイル名またはディレクトリ名を指定します。

基本的な使い方

 mvコマンドは、ファイルやディレクトリの整理に欠かせない基本的なコマンドです。ファイル名の変更や場所の移動を効率的に行うことができます。上書きに注意しながら、適切に活用しましょう。

ファイル名の変更

移動元と移動先の両方にファイル名を指定すると、ファイル名の変更を行います。

file1file2に名前変更され、file1は存在しなくなります。

user01@ubuntu:~$ cd work
user01@ubuntu:~/work$ touch file1
user01@ubuntu:~/work$ ls
file1

# ファイル名を変更する
user01@ubuntu:~/work$ mv file1 file2
user01@ubuntu:~/work$ ls
file2

ディレクトリへの移動

 移動先にディレクトリ名を指定すると、移動元のファイルやディレクトリを移動先ディレクトリ内に移動します。

file1dir1ディレクトリ内に移動されます。

user01@ubuntu:~/work$ mkdir dir1
user01@ubuntu:~/work$ touch file1
user01@ubuntu:~/work$ mv file1 dir1
user01@ubuntu:~/work$ ls dir1
file1

複数ファイルの移動

移動先がディレクトリの場合、複数のファイルを一度に移動することができます。

user01@ubuntu:~/work$ touch file1 file3
user01@ubuntu:~/work$ ls
dir1  file1  file2  file3
user01@ubuntu:~/work$ mv file1 file2 file3 dir1
user01@ubuntu:~/work$ ls dir1
file1  file2  file3
  • file1file2file3dir1ディレクトリに移動されます。
  • 移動元からはこれらのファイルは削除されます。

上書きの確認

 移動先に同名のファイルが存在する場合、mvコマンドは確認なしに上書きします。誤って重要なファイルを上書きしないように注意が必要です。

-iオプションで上書き確認

-iオプションを付けると、上書きする前に確認を求められます。

y(Yes)を入力すると上書きが実行されます。

user01@ubuntu:~/work$ touch file1 file2
user01@ubuntu:~/work$ mv -i file1 file2
mv: 'file2' を上書きしますか? y

ディレクトリの移動

 mvコマンドでディレクトリを移動する際、cpコマンドと違って-rオプションを指定する必要はありません。移動元にディレクトリを指定するだけで、そのディレクトリ内のすべてのファイルやサブディレクトリも含めて移動されます。

例:ディレクトリの移動
user01@ubuntu:~/work$ mkdir dir2
user01@ubuntu:~/work$ ls dir1
file1  file2  file3
user01@ubuntu:~/work$ mv dir1 dir2
user01@ubuntu:~/work$ ls dir2
dir1
user01@ubuntu:~/work$ ls dir2/dir1
file1  file2  file3
  • dir1ディレクトリがdir2ディレクトリ内に移動されます。
  • dir1内のファイルもそのまま移動されます。

不要になったファイルとディレクトリの削除

作業後、不要になったファイルやディレクトリは削除しておきましょう。

user01@ubuntu:~/work$ rm -r dir2 file2
user01@ubuntu:~/work$ ls
user01@ubuntu:~/work$

まとめ

  • mvコマンドは、ファイルやディレクトリの移動名前変更を行うためのコマンドです。
  • ファイル名の変更:移動元と移動先にファイル名を指定すると、ファイル名を変更します。
  • ディレクトリへの移動:移動先にディレクトリを指定すると、ファイルやディレクトリをその中に移動します。
  • 複数ファイルの移動:移動先がディレクトリの場合、複数のファイルを一度に移動できます。
  • 上書き確認-iオプションを使用すると、移動先に同名のファイルがある場合に上書き確認ができます。
  • ディレクトリの移動mvコマンドでは、ディレクトリをそのまま移動できます。-rオプションは不要です。

mvコマンドは日常的によく使用するコマンドの一つです。ファイルやディレクトリの整理に役立ちますので、ぜひ使いこなせるようになりましょう。