Я пытаюсь перечислить все файлы PDF в заданном каталоге $1
(и его подкаталоги), получить количество страниц в каждом файле и вычислить два числа с помощью pagecount. Мой скрипт работал, но только на имена файлов, которые не содержат пробелов и только в одном каталоге, который заполнен только файлами PDF. Я уже немного изменил его (используя кавычки вокруг переменных и т. Д.), Но теперь я немного застрял.bash использует только первую запись из find
Проблема, с которой я столкнулась, заключается в том, что, как и сейчас, скрипт обрабатывает только первый файл, найденный find . -name '*.pdf'
. Как я буду обрабатывать остальные?
#!/bin/bash
wd=`pwd`
pppl=0.03 #euro
pppnl=0.033 #eruo
cd $1
for entry in "`find . -name '*.pdf'`"
do
filename="$(basename "$entry")"
pagecount=`pdfinfo "$filename" | grep Pages | sed 's/[^0-9]*//'`
pricel=`echo "$pagecount * $pppl" | bc`
pricenl=`echo "$pagecount * $pppnl" | bc`
echo -e "$filename\t\t$pagecount\t$pricel\t$pricenl"
done
cd "$wd"
Спасибо за ваш вклад, который отлично работает! – Simon