テキストファイルに書いた改行区切りのファイル名を連続コピーする方法。

shellscript

MacやLinux系ならターミナルをつかって、指定したファイルのコピーが簡単にできました。実はiPhotoで大量の写真を読み込ませたのだけれど、その時読み込み不可で吐いてきたパス付きのファイルだけを別のところに移しておきたいなと方法をぐぐってみて見つけました。Windows PowerShellでも使えるのかな?

「改行区切りのテキストを1行ずつ読み込むシェルを作りたい」http://okwave.jp/qa/q5251654.html

もうちょっと具体的に書くとこんな感じ。USB外付けの3TBと名前をつけたHDDの未整理フォルダへ、ユーザー名hogeのデスクトップに置いたdo.txtに書かれたパス付きファイル名の一覧を逐次読み込んで指定場所へコピーするシェルスクリプトです。上の記事では単純コピーでしたが、タイムスタンプを保ったままコピーしたかったので、若干オプションを加えています。

$ while read dir_name; do cp -R -p $dir_name /Volumes/3TB/未整理; done < /Users/hoge/Desktop/do.txt

個人的にもメモとして。この方法は使えますよ!