LP 및 txt2pdf 유틸리티가 포함된 인터페이스 파일을 사용하여 인쇄 파일을 PDF로 변환

LP 및 txt2pdf 유틸리티가 포함된 인터페이스 파일을 사용하여 인쇄 파일을 PDF로 변환

우리의 레거시 응용 프로그램은 Solaris 5.10에서 LP 명령을 사용하여 조직 전체의 프린터로 보고서 파일을 인쇄했습니다. 그러나 이제 프린터에 액세스할 수 없는 원격 위치가 있으므로(적어도 안정적인 네트워크에는 없음) 인쇄 스풀러가 파일을 가로채도록 설정하고 다음과 같이 구성된 txt2pdf 유틸리티를 실행하려고 했습니다. 이메일을 통해 보내기 출력은 특정 이메일 주소로 전송됩니다. 이렇게 하면 이 한 위치에 대해서만 각 응용 프로그램의 인쇄 방법을 변경할 필요가 없습니다.

이 오래된 인쇄 스풀러에는 다양한 용도로 사용할 수 있는 사용자 정의 필터가 있으므로 이를 사용할 수 있다고 생각했으며 현재 필터 중 하나처럼 작업에 양식 피드를 추가하는 대신 txt2pdf를 통해 파일을 실행하고 빈 프린터로 출력했습니다. .

    case "$TERM" in
            PS )
                    # make the "postscript" printers use postio to
                    # talk to the printer and periodically get a
                    # status from them
                    FILTER="/usr/lib/lp/postscript/postio"
            ;;
            pptestterm)
                    FILTER="/usr2/dms/run/txt2pdf/txt2pdf - -landscape|lp -s -d NULL"
            ;;

(txt2pdf 명령의 유일한 "-"는 표준 입력 및 표준 출력을 사용함을 나타냅니다.)

분명히 이것은 작동하지 않으며 LP가 이러한 인터페이스/필터를 정확히 어떻게 적용하는지 이해하는 데 어려움을 겪고 있습니다.

위 구성을 사용할 때 로그 파일에 나타나는 오류 메시지는 다음과 같습니다.

06/04 14:56:53: printer fault. type: write root, status: c
msg: (txt2pdf: couldn't open temporary file ./txt2pdf18653)

이것이 어떻게 작동하는지에 대한 제안이 있으십니까?

관련 정보