2

PDFファイル(例:file.pdf)と名前のリスト(例:joe、fred、sam)を含むテキストファイル(例:names.txt)が与えられた場合、pdfファイルを新しいフォルダ(例:. dir) を複数回実行して、新しいファイルにテキスト ファイルの名前が含まれるようにします。

つまり file.pdf 、にコピーされます dir/joe_file.pdf dir/fred_file.pdf dir/sam_file.pdf

xarg を使用してみましたが成功しませんでした

cat names.txt | xargs cp file.pdf dir/{}_file.pdf

アイデアはありますか?

これを行うにはOSXを使用します。

4

4 に答える 4

1

これを実現するには、ループを使用します。

for line in $(cat names) ; do cp file.pdf dir/${line}_file.pdf; done
于 2013-06-09T10:26:42.023 に答える
1

最後に、私は御馳走を働かせる以下を使用しました。ご協力いただきありがとうございます!

cat names.txt | xargs -I{} cp file.pdf "{}"\ file.pdf
于 2013-06-22T16:16:10.663 に答える
0

GNU 並列を使用します。

parallel cp file.pdf dir/{}_file.pdf :::: names

たくさんのpdfファイルに対してそれを行う必要がある場合:

parallel cp {2} dir/{1}_{2} :::: names ::: *.pdf

GNU パラレルの詳細: https://www.youtube.com/playlist?list=PL284C9FF2488BC6D1

10 秒のインストール:

wget pi.dk/3 -qO - | sh -x
于 2013-06-21T12:07:43.263 に答える
0
 for fl in `cat names.txt`
  do 
   cp file.pdf dir/${fl}_file.pdf
  done 

お役に立てれば !!

于 2013-06-09T10:27:56.700 に答える