xargsに奇妙な問題があります。
私が持っているxargsのを、私はコマンドをエコーするとき、それは完璧に動作していても、動作しない構造を。私のライナーは次のとおりです。
exiftool -p exifprintformat -if '$Subject =~/DATA/i' -q *.pdf |grep pdf |sed 's/ //g'|xargs|xargs -0 -I % pdftk % cat output binder1.pdf
そして出力
エラー:ファイルが見つかりません。エラー:PDFファイルを開けませんでした:20170105170516234.pdf 20170105173126944.pdf 20170105173209758.pdf 20170621163418079.pdf
exiftool
対象タグのワードデータを含むすべてのPDFファイルを選択、-p exifprintformat
指示するexiftool
ファイル名のみを印刷するには、- は
grep
、pdfの行のみを選択します。 sed
削除しの空白、- 最初
xarg
はすべての行を1つの文字列に、2番目はbindコマンドを作成します)を実行すると
exiftool -p exifprintformat -if '$ Subject =〜/ DATA / i' -q * .pdf | grep pdf | sed 's / // g' | xargs | xargs -I {} echo pdftk {} cat出力バインダー1.pdf
私は得る
pdftk 20170105170516234.pdf 20170105173126944.pdf 20170105173209758.pdf 20170621163418079.pdf cat出力バインダー1.pdf
完璧に機能します。
明らかに、私は何か間違ったことをしています...しかし何ですか?
grep
行末(おそらく存在)がdarfst -0
予想され、NULバイト(おそらく欠落)が予想されます