Вы можете передать файл по конвейеру через sed
sed 's!/[^/]*$!!' textfile
. Если вы уже обрабатываете данные построчно в сценарии bash
, вы можете использовать его встроенные операторы для удаления конечного элемента.
item='/nrt/www/html/USA/anil.php'
dir="${item%/*}"
Для клиента CUPS драйвер не нужен, так как клиент общается с принтером через сервер CUPS. Для сервера CUPS вам необходимо установить драйвер для каждого принтера. Обычно сервер CUPS поставляется с набором драйверов Gutenprint, и когда вы добавляете принтер, вы можете выбрать производителя, а затем модель вашего драйвера в меню. Но для некоторых моделей драйвера Gutenprint плохо работают, поэтому может возникнуть ситуация, когда вам нужно будет скачать и установить драйвер самостоятельно.
Установка драйвера всегда сводится к простому действию :вам нужно найти .pdd
файл для вашей модели принтера и сообщить CUPS, где он находится (даже для драйверов, которые поставляются в виде установочных скриптов --все, что они делают, это распаковывают .pdd
файлы в какой-то каталог ). Хорошими источниками драйверов являются
Просто как пример всей процедуры :установка родного драйвера для моего принтера Samsung SCX -3405.
Сначала я зашел на сайт поддержки Samsung -на страницу , нашел свою модель драйвера. В разделе «Ручная загрузка» нашел «Драйвер печати и сканирования версии V1.00.36 _00.91, Linux» и скачал его (сжатый tar-файлuld_v1.00.36_00.91.tar.gz
).После распаковки этого архива
$ tar -pvxf uld_v1.00.36_00.91.tar.gz
Я обнаружил, что каталог uld
был создан:
$ cd uld
$ ls
arm/ i386/ install-printer.sh install-scanner.sh install.sh noarch/ uninstall-printer.sh uninstall-scanner.sh uninstall.sh x86_64/
Samsung предполагает, что вы будете запускать install-printer.sh
как root
, но в этом нет необходимости, так как все драйвера находятся в noarch/share/ppd/
и при установке принтера вы можете вручную выбрать драйвер из этой директории (забавно, что заставив нас выбрать модель принтера, Samsung присылает нам драйвера для всех моделей ).
Если вы хотите сохранить все драйверы Samsung для будущего использования, просто скопируйте их в «хранилище драйверов» CUPS.
$ su
# mkdir /usr/share/cups/model/samsung
# cp noarch/share/ppd/* /usr/share/cups/model/samsung
Для моего Samsung SCX -3405W у меня возникли проблемы с установкой этого драйвера.
Даже с последними драйверами uld _V1.00.39 _01.17(https://ftp.hp.com/pub/softlib/software13/printers/SS/SL-M4580FX/uld_V1.00.39_01.17.tar.gz)У меня были проблемы; всегда получаю:
Unable to open raster stream - : Broken pipe
Только после того, как я обратился кhttp://splix.sourceforge.net/илиhttps://sourceforge.net/projects/splix/и использовал его rastertoqpdl , он заработал.
Вот мой PPD файл:https://gist.github.com/ChaosEngine/65532a1bb837e5adaa067af7670ff2c2