Linuxで複数のファイルを一斉に移動させる







一つのファイルを動かす際の基本的な使い方は

mv [動かしたいファイル] [動かしたい先のディレクトリ/動かした先での名前]

でした.複数のファイルを移動させるとき”mv”を使うので,基本はこれと同じです.

複数のファイルを移動させるのは次の二つの方法があります.

動かしたい複数のファイルを直接指定する方法

例えば,

  • 今いるディレクトリにある”file1″,”file2″,”file3″の3つのファイルを
  • 今いるディレクトリの,”Hoge”というディレクトリに移動させたい

というときは,次のようなコマンドを打てばオッケーです.

mv file1 file2 file3 Hoge/

ワイルドカードを使う方法

同じく

  • 今いるディレクトリにある”file1″,”file2″,”file3″の3つのファイルを
  • 今いるディレクトリの,”Hoge”というディレクトリに移動させたい

ということを,ワイルドカードを用いて次のように短くすることもできます.

mv file* Hoge/

注意:動かしたい先のファイル名が似ているとき

少し状況を変えて

  • 今いるディレクトリにある”file1″,”file2″,”file3″の3つのファイルを
  • 今いるディレクトリの,”file”というディレクトリに移動させたい

となったときは少し注意が必要です.先ほどのようにワイルドカードを使って”mv file* file/”とすると次のようなエラーメッセージが現れます.

mv: cannot move ‘file’ to a subdirectory of itself, ‘file/file’

設定がが日本語版とかだったりすると次のようになります.

mv: `file’ を自分自身のサブディレクトリ `file’ に移動できません

つまり,ワイルドカードを使い”file*”とすると,”file”というディレクトリも該当してしまうので,「自分を自分の中に入れる」という訳の分からない操作になってしまうためこのようなメッセージが出ます.

しかし,このようなメッセージが出ていても,”file”というディレクトリ自身に対する操作が無効になるだけで,”file1″,”file2″,”file3″の3つのファイルは移動されるので,やりたい操作は実現できています.

おまけ:ファイルを一括コピー

一括コピーは,今までの内容を”mv”から”cp”に変えるだけです.

このブログについて

IAtLeX です.ブログをはじめてさほど時間がたっていないので,未熟な内容が多々あるかと思いますが,それも時間が解決してくれるはず...Python系の記事を着々と充実させていきたいです.投稿主についてはこちらを参照してください.

このブログについて - http://iatlex.com/about_blog/

コメントを残す

*