Простіше за що? За *.pdf ? Як я зрозумів, файли з підтек - не потрібні.
А не простіше "find . -type f -name "*pdf" -print0 -exec 'command' {} +"?Або find . -type f -name "*pdf" -print0 | xargs -0 'command'
filelist=( *.pdf )if [ "${filelist[0]}" == '*.pdf' ] ; then echo "Error, no pdf files found"fifor ((i=0; ++i < ${#fl};)) ; do j=$i while [ "${fl[j-1]}" -ot "${fl[j]}" ] ; do t="${fl[j-1]}" fl[j-1]="${fl[j]}" fl[j]="${t}" ((j > 1)) && ((j--)) donedonecmd "${filelist}" addargs[/tt]
fl=( *.pdf.* )list = "fulltext.pdf"for ((i=1; ++i < ${#fl[@]}+1;)) do list += " fulltext.pdf.$i"done...
Цитата: Михайло Даниленко(Guest) від 2007-11-28 02:45:03filelist=( *.pdf )if [ "${filelist[0]}" == '*.pdf' ] ; then echo "Error, no pdf files found"fifor ((i=0; ++i < ${#fl};)) ; do j=$i while [ "${fl[j-1]}" -ot "${fl[j]}" ] ; do t="${fl[j-1]}" fl[j-1]="${fl[j]}" fl[j]="${t}" ((j > 1)) && ((j--)) donedonecmd "${filelist}" addargs[/tt]Хоча оце я тільки перевірив, чи працює - на дуже тестував.Якщо я вас неправильно зрозумів щодо порядку - змініть оте -ot (older than) на -nt .P.S. Сортує за датою останньої модифікації.P.P.S. Трохи змінив вираз обміну двох комірок - прибрав додаткову змінну, та й виглядає воно зрозуміліше.P.P.P.S. Подумав, й повернув назад - там можливі глюки з ненормальними символами в назві файлу.
#!/usr/bin/pythonimport oscmd = "pdftk %s cat output merged.pdf"os.system(cmd % ' '.join(sorted([fn for fn in os.listdir('.') if fn.lower().endswith('.pdf')])))
#! /usr/bin/perl -w --opendir DIR, '.';my @list = sort grep /\.pdf$/i, readdir DIR;exec "echo @list merge.pdf";