2012-04-20 21 views
4

端末を使用してあるフォルダから別のフォルダにファイルをコピーしようとしています。私はそこに何千ものファイルがあるフォルダを持っており、それらに一致する何千ものファイル名を持つtxtリストを持っています。私は、txtリストにあるファイルだけを新しい場所にコピーする必要があります。端末、Macを使用してファイルをコピーする

私はこれをオンラインで見つけ、ディスク用に修正しましたが、動作していません。今日はターミナルを初めて開けたのは初めてです。これが私が必要とするものにさえ近ければ、私は何をしているのか分かりません。アドバイスをいただければ幸いです。

#!/bin/bash 

target="/Users/DataSourceSTL/Desktop/Photos" 
destination="/Users/DataSourceSTL/Desktop/Test" 

fnames=”/Users/DataSourceSTL/Desktop/Untitled.txt” 

for info in $fnames; do 
    cp ${target}/${info} ${destination}/ 
    exit 1 
    echo "copying $info" 
done 

echo "done" 
+0

が正しい二重引用符を使用してください。 'fnames'では間違ったものを使うようです。どのテキストエディタを使用していますか?テキストエディットは良い選択です。 –

答えて

2

これを試してみてください:

for info in `cat $fnames`; do 
    cp -v "${target}/${info}" "${destination}/" 
done 
echo "done" 
+0

コピー時に '-v'スイッチを投げて' echo ... '行を省略することができます... – alesplin

+1

名前に空白がある場合に、' cp'の引数を引用します。 –

+0

@alesplin&Ken Thomases:true! –

関連する問題