rm $1/image.iso
rm -r $1/cdr/samba
Сценарий и разделяемый объект, используемые в данном примере, надо сконфигурировать так же, как это было сделано для объекта [cd-create]
create-cd. Файл, содержащий сценарий, должен быть определен как исполняемый, опции утилит mkisofs и cdrecord необходимо привести в соответствие с конфигурацией вашей системы, а для утилиты cdrecord надо установить признак SUID, чтобы она выполнялась с правами root. Для записи компакт-диска необходимо передать zip-файл разделяемому объекту, используя для этого команду COPY системы DOS или Windows.С:\> COPY FILE.ZIP\\SERVER\CD-PRINT
В результате выполнения данной команды содержимое файла FILE.ZIP
SERVER при вызове команды должно быть указано имя конкретного сервера. Эту команду следует поместить в файл .ВАТ; имя zip-файла будет передаваться ей с помощью переменной.COPY %1 \\SERVER\CD-PRINT
При вызове файла .ВАТ
MAKECD.ВАТ, то для его вызова используется команда MAKECD FILE.ZIP. Если вы создадите на рабочем столе ярлык, представляющий файл .ВАТ, то для записи компакт-диска достаточно будет перетащить файл архива на пиктограмму файла .ВАТ. В состав файла .ВАТ можно также включить вызов утилиты архивирования файлов. В этом случае, чтобы записать диск, пользователь должен будет собрать все необходимые ему файлы в одном каталоге и перетащить этот каталог на пиктограмму файла .ВАТ.Как и при использовании разделяемого объекта файлов, решение, реализованное в данном примере, имеет ряд недостатков. При выполнении сценария не проверяется размер образа диска и не принимаются меры, препятствующие одновременному обращению двух пользователей к разделяемому объекту. Но сценарий, свободный от этих недостатков, был бы гораздо сложнее.
Пример создания PDF-файлов
В качестве примера использования очереди печати можно привести задачу преобразования входных PostScript-данных в PDF-файлы. Для ее решения надо создать очередь подобную той, которая используется для обработки данных, сгенерированных с помощью PostScript-драйвера. Описание разделяемого объекта имеет следующий вид:
[pdf-create]
comment = Create a PDF file
path = /var/spool/samba
printable = Yes
print command = gs -dNOPAUSE -q -dBATCH -sDEVICE=pdfwrite \
-sOutputFile=%H/%s.pdf %s; rm %s
Символ \
С помощью параметра print command
gs). Опции -dNOPAUSE, -q и -dBATCH обеспечивают непрерывный вывод данных с минимальным набором специальных сообщений, не требующий вмешательства пользователя. Опция -sDEVICE=pdfwrite указывает на то, что в результате выполнения программы должны генерироваться PDF-файлы, а опция -sOutputFile=%H/%s.pdf формирует имена файлов, отличающиеся от имен заданий на печать только суффиксом .pdf. Сформированные PDF-файлы сохраняются в рабочем каталоге пользователя. Определение данного разделяемого объекта можно модифицировать так, чтобы PDF-файлы помещались в другой каталог или передавались пользователю в составе почтовых сообщений.Резюме