명령 행에서 인쇄


28

명령 행 출력을 프린터로 직접 인쇄하는 방법

우분투 서버 12.04를 사용하고 있으며 파일을 공유 디렉토리에 복사 한 다음 데스크탑 우분투 배포판에서 파일을 다운로드하여 인쇄해야합니다.

어떤 도움을 주셔서 감사합니다


일반 텍스트 나 PDF를 인쇄 할 것인지는 말하지 않았습니다. 일부 시스템은 즉시 사용 가능한 일반 텍스트 만 지원하므로이를 다루어야합니다.
Alexis

나는 그들이 왜 내 대답을 downvote하는지 몰라, 그냥 시도해보십시오.
nux

@nux +1 모든 답변은 대단히 감사합니다
kamil

@alexis 명확합니다 : 콘솔 출력을 인쇄하고 싶습니다. 예를 들어 ls는 프린터로 직접 출력됩니다
kamil

죄송합니다. 당신이 말을했는데보고 싶었습니다. 죄송합니다!
Alexis

답변:


35

주로 두 가지 기본 명령이 있습니다.

lprlp

man lpr 출력을 제공합니다.

lpr은 인쇄 할 파일을 제출합니다. 명령 행에 이름이 지정된 파일은 이름이 지정된 프린터 (또는 대상이 지정되지 않은 경우 기본 대상)로 전송됩니다. 명령 행에 파일이 나열되지 않으면 lpr은 표준 입력에서 인쇄 파일을 읽습니다.

man lp 출력을 제공합니다.

lp는 인쇄 할 파일을 제출하거나 보류중인 작업을 변경합니다. 표준 입력에서 강제로 인쇄하려면 파일 이름 "-"를 사용하십시오.

너무 쉽게 명령을 사용하십시오 :

lp /path-to-file-to-print

또는

lpr /path-to-file-to-print

15

당신이 사용할 수있는 lp

예를 들면 다음과 같습니다.

man firefox | lp -d printername

이것은 파이어 폭스에서 지정된 프린터로 맨 페이지를 인쇄합니다


1
고마워, 나는 또한 o fit-to-page페이지의 텍스트를 조금 더 잘 유지 하기 위해 사용해야 했습니다. man bash | lp -o media=letter -o portrait -o fit-to-page -상기 -단부 보장하지만 표준 입력에서 읽어 들인다.
Elijah Lynn

1
프린터가 기본값이면 -d매개 변수 가 필요하지 않습니다 . Ubuntu with Unity의 경우 검색 버튼을 클릭하여 기본 프린터를 설정 한 다음 "print"를 입력하면 기본값을 설정할 수있는 올바른 위치로 이동합니다. 또한, lp예에서 당신은 한동안 유닉스 주변에 있었다고 말합니다. lpr우분투에서도 동일하게 작동합니다.
SDsolar

4

설치 한 경우 알아야 할 다른 옵션은 다음과 같습니다.

번호가 매겨진 페이지에 제목과 선택적 줄 번호를 제공하는 데 유용합니다. 그런 다음 소책자 스타일을 인쇄하는 데 사용할 수도 있습니다 (예 : 시트의 각면에 2 페이지).

Postscript 가능 프린터와 함께 사용하지만 Ubuntu의 인쇄 시스템은 지원되는 모든 프린터의 PS를 래스터 화 할 수 있다고 생각합니다.


이것은 좋은 생각입니다
kamil

물론 포스트 스크립트 코딩을 직접 능가합니다.
SDsolar

3

프린터에 먼저 액세스하는 방법을 알고 싶을 lpstat때 해당 정보를 제공합니다. 두 시스템에서 출력을 비교하는 경우 해당 프린터가 두 시스템 모두에 구성되었는지 알 수 있습니다. lpstat -p -d모든 프린터의 상태를 나열하고 기본 프린터로 설정된 프린터를 알려줍니다.

출력을 lpor lpr명령에 파이프 하면됩니다. 그래도 예쁜 인쇄 나 페이지 매김을 위해 필터를 삽입 할 수 있습니다. 데비안 매뉴얼 "일반 텍스트 데이터 강조 및 형식 지정" 에는 도구에 대한 요약이 있지만 일반적으로 sed모든 것을 보내기 전에 프롬프트 및 기타 내용을 강조 표시 하는 데 사용 하고 있습니다.a2ps


2

사용 중에 .txt 파일을 인쇄하려면

command | lpr -P printername -p ( periority from 1 to 100 )

예 :

ls -l | lpr -P printername -p 1 

1

문제는 서버 의 명령 줄 에서 인쇄하는 방법에 관한 것이며 아직 해당 시스템에 프린터가 정의되어 있지 않은 것 같습니다. 확인할 시스템이 없으므로 다음은 대략적인 것이지만 일반적인 아이디어를 제공해야합니다.

  1. CUPS 시스템이 설치되어 실행 중인지 확인하십시오. 인쇄 작업을 처리 할 데몬을 제공합니다.
  2. 이것이 설치되면 인쇄 할 하나 이상의 네트워크 프린터를 설정해야합니다. 프린터를 설치하는 일반적인 방법은 Printer Admin 유틸리티를 사용하는 것이지만 서버에서 GUI 프로그램을 실행하도록 설정되지 않은 것 같습니다. ssh를 통한 명령 줄 액세스 만 가능합니다. 동일한 네트워크에 이미 Ubuntu 데스크탑 시스템이 있으므로 디렉토리의 내용을 /etc/cups데스크탑 상자에서 서버로 복사하려고 합니다. 필요한 모든 프린터 정의 및 드라이버가 포함되어 있어야합니다. 필요한 조정 (파일 설정에 두 시스템간에 다른 사용자 ID 또는 비밀번호가 언급 된 경우)이 있는지 파일을 확인한 후 다시 시작 cupsd하십시오. 운이 좋으면 lpr명령 행에서 인쇄하는 데 사용할 수 있습니다.

추신. 핀치에서 데스크톱 Ubuntu 상자에 원격 X 연결을 통해 Print Admin GUI 유틸리티를 실행하기에 충분한 X 유틸리티를 설치하고 (로 로그인 ssh -X) 필요한 프린터를 정의 할 수 있습니다. 그러나 이것이 필요하지 않기를 바랍니다.


1

lp명령을 사용할 수 있습니다 .

명령의 출력을 기본 프린터로 인쇄하려면 ( lpstat -d기본 프린터가 무엇인지 확인하는 데 사용 ) :

echo "test" | lp

특정 프린터로 인쇄하려면 (사용 lpstat -p | awk '{print $2}'가능한 프린터 이름을 나열하는 데 사용) :

echo "test" | lp -d printername

명령 출력이 아닌 파일을 인쇄하려면

lp /path/to/file
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.