Escape whitespace в поиске для pdftk без xargs -J

Я хотел бы объединить все PDF-файлы в подкаталоги, причем имена файлов потенциально содержат пробелы. Я хорошо знаю об этом решении,

find . -name *.pdf -print0 | xargs -0 -J FILE pdftk FILE cat output out.pdf 

Однако, к сожалению, моя версия xargs не поддерживает параметр -J. Существуют ли альтернативные способы достижения этого?

Я пробовал это

 pdftk $(find . -name *.pdf -print0 | xargs -0 -I {} printf '%q ' {} ) cat output out.pdf 

но pdftk рассматривает это так, как будто побегов там не было.

  • Выполнить строку из сценария оболочки как набор команд оболочки
  • Bash: процесс уничтожения в функции используемой памяти
  • Простой скрипт установки говорит, что он не может найти пакет
  • Отправка настраиваемого контента на основе определенного поиска в файле журнала
  • Почему мне нужно нажать enter, чтобы получить приглашение моей оболочки после завершения скрипта init.d?
  • может ли что-то помимо shebang установить переводчика?
  • Выберите последний файл, основанный на порядковом номере, указанном в имени файла
  • Перечисление «компьютеров, подобных мне» в моей подсети?
  • One Solution collect form web for “Escape whitespace в поиске для pdftk без xargs -J”

    -I не вариант для вас. Вам нужно следующее:

     find . -name '*.pdf' -type f -exec sh -c 'pdftk "$@" cat output /tmp/out.pdf' x {} + 

    Здесь есть несколько оговорок:

     a) Your current working dir. != /tmp b) The sh is run just once otw, the out.pdf will be overwritten by the last run. c) Your sh stores the 1st -> $0, 2nd -> $1, 3rd -> $2, etc. 

    Хотя все вышеперечисленное можно обойти, но этого достаточно, чтобы вы начали.

    Linux и Unix - лучшая ОС в мире.