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

ファイルのテキストリストからの Linux (mv または cp) 固有のファイル?

解決策 1:

cat の無駄な使用を避けるために (そして rsync を使用しない場合 ):

xargs -a file_list.txt mv -t /path/to/dest

これは、ファイルが 1 行に 1 つずつリストされている場合、改行が含まれていない限り、有効なファイル名を処理します。

解決策 2:

rsync には、処理するファイルのリストを取得できるオプションがいくつかあります (--files-from--include-from など)

たとえば、これでうまくいきます:

rsync -a /source/directory --files-from=/full/path/to/listfile /destination/directory

解決策 3:

for file in `cat listoffiles`; do mv "$file" /path/of/destination ; done

bash を想定し、プラス listoffiles 1 行に 1 つのファイルが含まれます。 rsync ルートに対する私の唯一の異議は、OP がファイルをコピーするのではなく、ファイルを移動する方法を要求することです。 rsync には王室の結婚式よりも多くのフラグがあるので、それを行うためにさらに変更できると確信していますが、単純な方が良い場合もあります!

解決策 4:

rsync --files-from=file_list.txt /path/to/source/ /path/to/dest/

Rsync には cp よりも優れた利点があります または mv フォルダーが存在しない場合は自動的に作成されるためです。

解決策 5:

これは、使用しているテキスト ファイルの形式によって異なります。たとえば、各ファイルが新しい行にあるように記述されたファイルのリストがあるとします。次のような xargs を使用できます:

$ cat your_text_file | xargs cp -t /path/to/destination

また、 find を使用できます -exec のコマンド オプション。ファイルをコピー/移動します。


Linux
  1. Linuxでのコピーから特定のディレクトリを除外する方法

  2. Linuxでのrsyncコマンドの実用例

  3. コマンドラインからLinuxサーバーを移行するときにrsyncを高速化する

  1. Linux ls コマンド - ファイルの一覧表示

  2. Linuxでテキストファイルからバイナリを見分ける方法

  3. Linux で特定のテキストを含むすべてのファイルを見つけるにはどうすればよいですか?

  1. ファイルのリストを検索から除外する

  2. Linux マージ フォルダ:rsync?

  3. 特定の日付からファイル/フォルダーを再同期する方法は?