Печать из терминала

Аватар пользователя marsel

Случай такой: поставил принтер HPLJ 1100, из Х-ов русский текст печатается, а вот из терминала нет. В терминале пишу cat | lpr -P HPLJ1100 . Почему???

Аватар пользователя sergeil

Re: Печать из терминала

Цитата:
marsel писал:
Случай такой: поставил принтер HPLJ 1100, из Х-ов русский текст печатается, а вот из терминала нет. В терминале пишу cat | lpr -P HPLJ1100 . Почему???

В имени принтера есть пробел?

А если не указывать имя принтера, то печать работает?
cat | lpr

У Вас несколько принтеров?

Аватар пользователя marsel

Re: Печать из терминала

Пробела нет, все слитно. Принтер только один. Если имя не указывать, все равно печатает как прежде без русских.

Аватар пользователя sergeil

Re: Печать из терминала

Цитата:
marsel писал:
Пробела нет, все слитно. Принтер только один. Если имя не указывать, все равно печатает как прежде без русских.

Кстати, Ваш принтер кирилизирован?

Возможно, без русских печатается по той простой причине, что используется встроенный в принтер шрифт (аналог ДОС-овской печати). При печати из приложения X Window приложение, как правило, использует графический режим и свои собствнные шрифты...

Посмотрите расширенные настройки cups... Кстати, а какой у Вас дистрибутив, система печати и как подключен принтер?

Аватар пользователя slavaz

Re: Печать из терминала

cat  | iconv -f  `echo $LANG|awk -F \\. '{print $2}'` -t cp866 -- | lpr -P HPLJ1100 -o raw

Аватар пользователя marsel

Re: Печать из терминала

Цитата:
sergeil:
Посмотрите расширенные настройки cups... Кстати, а какой у Вас дистрибутив, система печати и как подключен принтер?

А что именно смотреть в настройках? У меня ASPLinux 9.2 и принтер подключен к lpt порту.
Как же решить эту проблему?

Цитата:
slavaz:
cat | iconv -f `echo $LANG|awk -F \. '{print $2}'` -t cp866 -- | lpr -P HPLJ1100 -o raw

Распишите эту запись мне пожалуйста.

Аватар пользователя sergeil

Re: Печать из терминала

Цитата:
marsel писал:
А что именно смотреть в настройках? У меня ASPLinux 9.2 и принтер подключен к lpt порту. Как же решить эту проблему?

В 9.2 две системы печати: CUPS и LPRng. Какую Вы используете?

Цитата:

Цитата:
slavaz:
cat | iconv -f `echo $LANG|awk -F \. '{print $2}'` -t cp866 -- | lpr -P HPLJ1100 -o raw

Распишите эту запись мне пожалуйста.

ОК

cat - вывести файл в стандартный поток

| - стандартный выход предыдущей програмы подать на стандартный вход следующей

iconv -f <кодировка> -t cp866 --:
конвертировать
-f <кодировка> - из кодировки <кодировка>
-t 866 - в кодировку CP866
-- поток для кодирования - стандартный поток (sndin)
Содержимое выводится в стандартный поток вывода (stdout).

`echo $LANG|awk -F \. '{print $2}'`:

`expression` - Выполнить то, что находится между обратными скобками (expression)

echo $LANG - вывести в stdout значение переменной окружения LANG (настрояка языка).

awk -F \. '{print $2}' - полученную на стандартный вход строку awk должен разбить на поля, использовав точку в качестве разделителя полей и вывести второе поле.

Итого все вмести: содержимое файла переконвертировать из системной кодировки (например KOI8-R) в CP866 и вывести на ... lpr -P HPLJ1100 -o raw.

Дополнительная литература...

man bash
man iconv
man awk

Аватар пользователя slavaz

Re: Печать из терминала

Мдам, даже добавить нечего. Спасибо, Сергей :friends:

Аватар пользователя marsel

Re: Печать из терминала

Огромное спасибо за объяснение записи. :good: Попробовал, не помогло. Использую я систему печати CUPS.

Аватар пользователя sergeil

Re: Печать из терминала

Цитата:
marsel писал:
Огромное спасибо за объяснение записи. :good: Попробовал, не помогло. Использую я систему печати CUPS.

Кстати, а Ваш принтер русифицировн? Может ли он печатать кириллические текстовые файлы в режиме ДОС-печати?

Аватар пользователя marsel

Re: Печать из терминала

Принтер оказывается не был кирилизован. Нашел шрифты, загрузил их. Но русский текст пошел после того, как я начал использовать параметр -l (т.е. lpr -l). Как сделать, чтобы не приходилось его писать каждый раз (может надо прописать его в каком то confige) .

RSS-материал