수백 개의 자동으로 추가 된 네트워크 프린터를 어떻게 제거합니까?


16

프린터 대화 상자에는 수백 개의 자동으로 추가 된 프린터가 가득하여 사용하고 싶은 프린터를 찾을 수 없으므로 인쇄를 수행하기가 매우 어렵습니다 (아래 스크린 샷 참조).

매우 긴 스크롤 막대를 표시하는 프린터 대화 상자 이미지

프린터는 내 작업 네트워크에서 비롯된 것으로 보입니다. 학생을 포함한 많은 사람들이 가정용 프린터를 "공유"하고 노트북이 자동으로 선택됩니다. (우연히 나는 많은 양의 CPU를 사용하고 있기 때문에 직장에서 때로는 avahi-daemon을 비활성화합니다).

로 이동하면 http://localhost:631/printers/131 개의 프린터가 있으며 모두 제조업체 및 모델 'Local Raw Printer'입니다. 두 가지 예외가 있습니다. 1은 수동으로 구성한 네트워크 프린터입니다. 다른 하나는 부모님의 네트워크 프린터이며, 자동으로 추가되어 현재와 동일한 네트워크에 있습니다. 그러나 나머지는 정말 피하고 싶은 쓰레기입니다. 그렇게하는 방법에 대한 팁을 주시면 감사하겠습니다.

나는 잠시 동안 내 작업장으로 돌아 가지 않을 것이기 때문에 지금은이 프린터 (129/130 자동으로 추가 된 프린터)를 제거하고 싶습니다. 그렇게 할 수있는 방법이 있습니까? 컵 웹 인터페이스를 클릭하여 수행 할 수 있다고 생각하지만 129 프린터의 경우 약간 많습니다. 그래서 나는 일종의 스크립트로 그것을 달성하는 방법에 대한 단일 명령 또는 팁을 찾고 있습니다.


1
/etc/cups/printers.conf를 참조하십시오. 컵을 멈춘 다음 파일에서 프린터를 제거하십시오.
Rinzwind

2
이미 설치된 프린터를 제거하는 방법을 묻고 있기 때문에 중복되지는 않습니다. 다른 질문은 설치 방지에 관한 것입니다. 또한 작동하지 않는 오래된 답변에 대한 혼란스러워하는 질문입니다. 나는 그것을 전에 보았고 그것을 시도했기 때문에 이것을 알고 있습니다.
jonaslb

1
이해, 철회 :)
NGRhodes

답변:


12

이 명령을 사용하여 : lpstat -a설치된 프린터를보고 유지할 프린터 이름을 식별 할 수 있으며 grep명령을 사용 하여 다음과 같이 결과를 필터링 할 수 있습니다 lpstat -a | grep <probable_name_of_printer>.

그런 다음이 작은 스크립트가 도움이 될 수 있습니다.

  1. 원하는 프린터가 목록에 없는지 확인하려면이 명령을 실행하십시오.

    lpstat -a | cut -d" " -f1 | sed -E '/<NAME_OF_PRINTER>/d' | grep <NAME_OF_PRINTER>
    
    • 다음과 같이 아무것도 반환하지 않아야합니다.

      • lpstat -a: 설치된 프린터 목록
      • cut -d" " -f1: 프린터 이름 만 반환
      • sed -E '/<NAME_OF_PRINTER>/d': 이전 명령의 출력에서 ​​유지하려면 프린터 이름을 제거하십시오.
      • grep <NAME_OF_PRINTER>: 원하는 프린터가 목록에 없는지 확인하십시오
  2. 위의 내용을 확인한 경우 그런 다음이 명령을 실행하여 필요하지 않은 다른 모든 프린터를 제거하십시오.

    sudo bash -c 'for i in $(lpstat -a | cut -d" " -f1 | sed -E '/<NAME_OF_PRINTER>/d'); do lpadmin -x "$i"; done'
    

이것은 유망 해 보인다. 그래도 문제가있을 수 있습니다 (목록 명령이 아마도 마지막 명령 일 수도 있음). lpstat -a결과 <printer_name> not accepting request since <some date> -\n reason unknown(와 reason unknown새로운 라인!). 따라서 목록 명령을 사용하면 reason이라는 이름의 "프린터"가 많이 생깁니다 (들여 쓰기가 있음).
jonaslb

단계 중 어느 부분에 문제가 있는지 확인하고 질문에 결과를 추가하여 팔로우 할 수 있습니다. 명령 lpstat -a은 당신에게 무엇을 제공합니까?
George Udosen 19

1
그것은 잘 작동했지만 추가 sed파이프 sed -E /reason/d를 제거하기 위해 "파이프 체인"에 다른 명령을 추가했습니다.
jonaslb

대단한 일이었고 기뻤습니다!
George Udosen 19
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.