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

コマンドラインから複数のファイルタイプを同時に移動する方法

先日、あるディレクトリから別のディレクトリに複数のファイルタイプを移動する(コピーしない)方法を探していました。 特定の種類のファイルを見つけて、あるディレクトリから別のディレクトリにコピーする方法をすでに知っていました。 。しかし、複数のファイルタイプを同時に移動する方法がわかりません。このような状況に陥ったことがある場合は、Linuxのコマンドラインから簡単に行うことができます。

同じまたは異なるファイルタイプをいくつか移動するのは簡単です。これは、GUIモードでマウスを数回クリックするか、CLIモードでワンライナーコマンドを使用して行うことができます。ただし、ディレクトリに数百の異なるファイルタイプがあり、一度に複数のファイルタイプを異なるディレクトリに移動したい場合は、面倒な作業になります。幸いなことに、次の方法で簡単に作業できました!

Linuxで複数のファイルタイプを同時に移動する

このシナリオを想像してください。 'dir1' という名前のディレクトリに、.pdf、.doc、.mp3、.mp4、.txtなどの複数の種類のファイルがあります。 。

このディレクトリの内容を見てみましょう:

$ ls dir1
file.txt image.jpg mydoc.doc personal.pdf song.mp3 video.mp4

一部のファイルタイプ(すべてではない)を別の場所に移動したい。たとえば、doc、pdf、txtファイルを'dir2'という名前の別のディレクトリに移動するとします。 一度に。

.doc、.pdf、および.txtファイルをdir1からdir2に同時に移動するには、コマンドは次のようになります。

$ mv dir1/*.{doc,pdf,txt} dir2/

簡単ですね。

それでは、dir2の内容を確認しましょう:

$ ls dir2/
file.txt mydoc.doc personal.pdf

見る? dir1のファイルタイプ.doc、.pdf、および.txtがdir2に移動されました。

Linuxでmvコマンドを使用して複数のファイルタイプを同時に移動する

中括弧内には、必要な数のファイルタイプを追加できます。 上記のコマンドで、それらを異なるディレクトリ間で移動します。上記のコマンドは、Bashでは問題なく機能します。

複数のファイルタイプを移動する別の方法は、ソースディレクトリ(この場合はdir1)に移動することです。

$ cd ~/dir1

そして、以下に示すように、選択したファイルタイプを宛先(dir2など)に移動します。

$ mv *.doc *.txt *.pdf /home/sk/dir2/

.doc など、特定の拡張子を持つすべてのファイルを移動するには のみ、実行:

$ mv dir1/*.doc dir2/

詳細については、manページを参照してください。

$ man mv

他のワンライナーコマンドを知っている場合 一度に複数のファイルタイプを移動するには、下のコメントセクションで共有してください。それに応じてガイドを確認して更新します。


Linux
  1. Sedを使用してテキストファイルから複数のランダム行を削除する方法は?

  2. ファイルから変数を読み取る方法は?

  3. ターミナルウィンドウからLinuxでファイルを作成するには?

  1. 数千を含むフォルダから100ファイルを移動する方法は?

  2. Awkからファイルをキャットする方法は?

  3. install -c は cp とどう違うのですか

  1. Linuxでファイルを移動する方法

  2. ファイルまたはスクリプト内のパイプから複数の行を選択する方法は?

  3. cp -f は cp --remove-destination とどう違うのですか?