Я имел потребность переслать почту корня, зашифрованную также, и суммировал мои результаты здесь: http://www-public.it-sudparis.eu/~berger_o/weblog/2006/01/20/secure-forwarding-of-roots-mail-through-gpg/
Возможно, это может решить Ваши потребности также.
Если у Вас есть относительно простое дерево файла, где у Вас есть только один уровень каталогов, и где каждый каталог содержит список файлов, но нет никаких подкаталогов, необходимо смочь сделать что-то вроде этого (можно вставить это непосредственно в терминал и совершить нападки, Входят):
for dir in *; do ## For each directory
if [ "$(ls -A "$dir")" ]; then ## If the dir is not empty
for file in "$dir"/*; do ## For each file in $dir
i=0; ## initialize a counter
## Get the subject
sub=$(grep ^Subject: "$file" | cut -d ':' -f 2-);
## get the date, and format it to MMDDYY_Hour:Min:Sec
date=$(date -d "$(grep ^Date: $file | cut -d ':' -f 2-)" +%m%d%y_%H:%M:%S);
## the pdf's name will be <directory's name> _ <date> _ <subject>
name="$dir"_"$date"_"$sub";
## if a file of this name exists
while [ -e "$dir/$name".pdf ]; do
let i++; ## increment the counter
name="$dir"_"$date"_"$sub"$i; ## append it to the pdf's name
done;
wkhtmltopdf "$file" "$dir"/"$name".pdf; ## convert html to pdf
done
fi
done
Примечания
Это решение требует wkhtmltopdf
:
Простая утилита оболочки для преобразования HTML в PDF с помощью механизма визуализации WebKit и QT.
В базирующихся системах Debian можно установить его с
sudo apt-get install wkhtmltopdf
Это предполагает, что нет никаких файлов в высокоуровневом каталоге и только желаемых файлов HTML во всех подкаталогах.
Это может иметь дело с именами файлов и именами каталогов, которые содержат пробелы, новые строки и другие неортодоксальные символы.
Учитывая файл dir1/foo
с содержанием примера Вы отправили, он создаст названный файл dir1/dir1_020513_20:59:53_Civilized Discourse Construction Kit10.pdf
Вы всегда можете использовать страницу Название для имени Конвенция, поэтому он должен быть уникальным.
Данный файл со списком адресов, вот одноклассник:
while read url; do wkhtmltopdf $url "$(curl -s $url | grep -o "<title>[^<]*" | tail -c+8).pdf"; done < urls.lst
где URLS.LST
- ваш файл со списком URL.