GNU/Linux >> Linux の 問題 >  >> Linux

6 Linux のファイルとディレクトリを移動または名前変更する mv コマンドの例

Linux の mv コマンドは、ファイルとディレクトリをある場所から別の場所に移動するために使用されます。ファイルの移動とは別に、ファイルまたはディレクトリの名前を変更することもできます。

1.ファイルの名前を変更

mv コマンドを使用してファイルの名前を変更している間、別の名前に移動した後でも inode 番号は同じままです。ファイルを別のファイルシステムに移動すると、inode 番号が異なります。

$ cd /tmp

$ ls -i sample.txt
136407 sample.txt

$ mv sample.txt sample1.txt

$ ls -i sample1.txt
136407 sample1.txt

注: ls コマンドの例で前述したように、ls -i はファイルの inode 番号を表示します。

2.ディレクトリの名前を変更

ファイルの名前を変更するのと同じように、以下に示すように mv コマンドを使用してディレクトリの名前を変更できます。これにより、名前を変更した後もディレクトリの inode 番号が同じに保たれます。

ls -l dir を実行すると、ディレクトリ内のファイルが表示されます。ディレクトリのプロパティを表示するには、-d オプションを使用します。 -i オプションは、ディレクトリの inode 番号を表示します。

$ ls -ldi dir1
271365 drwxr-xr-x 2 bala bala 4096 2010-10-30 20:25 dir1

$ mv dir1 dir2

$ ls -ldi dir2
271365 drwxr-xr-x 2 bala bala 4096 2010-10-30 20:25 dir2

3.上書き前に確認を求める

デフォルトでは、mv コマンドは宛先ファイルが存在するかどうかの確認を求めず、単純に上書きします。これを回避するには、以下に示すように -i オプションを使用して宛先ファイルを上書きする前に、move コマンドから確認を取得することをお勧めします。 'y' または 'n' を入力して、移動操作を受け入れるか拒否するかを指定できます。

$ mv -i sample.txt sample1.txt
mv: overwrite `sample1.txt'? 

宛先ファイルのパーミッションがソース ファイルと異なる場合、mv -i コマンドは次の確認を表示します。

$ mv -i sample.txt sample1.txt
mv: try to overwrite `sample1.txt', overriding mode 0644 (rw-r--r--)? y

4.複数のファイルを特定のディレクトリに移動

mv コマンドを使用して、複数のファイルを移動できます。次の例では、現在のディレクトリの内容を別のディレクトリに移動します。

$ cd chap1

$ ls -F
ex1.c    ex2.c    ex3.c    example/   exercise/  

$ mv * chap2/

5.上書きする前に宛先のバックアップを取る

mv –suffix オプションを使用すると、上書きする前に宛先ファイルのバックアップを取ることができます。元の宛先ファイルは、-S または –suffix オプションで指定された拡張子で移動されます。

$ ls
file1    file2

$ mv --suffix=.bak file1 file2

$ ls
file2    file2.bak

注: 「mv –suffix」のエイリアスを作成すると、mv コマンドを使用するたびにバックアップ先ファイルが存在する場合に自動的にバックアップが作成されます。

6.移動先ディレクトリに存在しないファイルのみを移動

mv * を実行すると、すべてのファイルが移動先ディレクトリに移動されます。ただし、ソース ディレクトリから移動先ディレクトリに存在しないファイルのみを移動する場合は、以下に示すように mv -u オプションを使用します。

次のコマンドは、ex2 と ex2 のみを chap1 から chap2 に移動します。ex1 ファイルは chap2 に既に存在するため、移動されません。

$ ls chap1
ex1    ex2    ex3

$ ls chap2
ex1

$ mv -u chap1/* chap2/

$ ls chap1
ex1

$ ls chap2
ex1    ex2    ex3

Linux
  1. Linuxでのmvコマンド:7つの重要な例

  2. Linuxテールコマンドの例

  3. Linux での ln コマンドの例

  1. Linuxでの8つのヘッドコマンドの例

  2. Linux での file コマンドの例

  3. Linux ディレクトリ移動コマンド

  1. Linuxでの8つのStatコマンドの例

  2. LinuxのZipおよびUnzipコマンドと例

  3. Linuxでファイルとディレクトリを移動する方法(mvコマンド)