ippfind - encontra impressoras de protocolo de impressão da
internet
ippfind [ options ]
regtype[,subtype][.domain.] ... [
expression ... ]
ippfind [ options ]
name[.regtype[.domain.]] ... [
expression ... ]
ippfind --help
ippfind --version
ippfind encontra serviços registrados com um
servidor DNS ou disponíveis através de dispositivos locais. O
seu principal objectivo é encontrar impressoras IPP e mostrar os seus
URIs, mostrar os seus estados actuais, ou correr comandos.
ippfind suporta os seguintes tipos de
inscrição:
- _http._tcp
- HyperText Transport Protocol (HTTP, RFC 2616)
- _https._tcp
- Secure HyperText Transport Protocol (HTTPS, RFC 2818)
- _ipp._tcp
- Internet Printing Protocol (IPP, RFC 2911)
- _ipps._tcp
- Secure Internet Printing Protocol (IPPS, draft)
- _printer._tcp
- Line Printer Daemon (LPD, RFC 1179)
ippfind suporta expressões muito como o
utilitário find(1) faz. No entanto, ao contrário do
find(1), o ippfind usa expressões regulares POSIX em
vez de padrões de correspondência de nome de ficheiro em
shell. Se --exec, -l, --ls, -p, --print,
--print-name, -q, --quiet, -s, ou -x
não forem especificados, o ippfind adiciona --print par
escrever o URI do serviço de qualquer coisa que encontre. As
seguintes expressões são suportadas:
- -d regex
- --domain
regex
- Verdadeiro se o domínio corresponder à expressão
regular fornecida.
- --false
- Sempre falso.
- -h regex
- --host
regex
- Verdadeiro se o nome de máquina corresponder à
expressão regular fornecida.
- -l
- --ls
- Lista os atributos retornados por Get-Printer-Attributes para impressoras
IPP e saída tradicional de find "-ls" para URLs de
HTTP. O resultado é verdadeiro se o URI for acessível, e
falso caso contrário.
- --local
- Verdadeiro se o serviço for local para este computador.
- -N name
- --literal-name
name
- Verdadeiro se o nome de instância de serviço corresponder ao
nome fornecido.
- -n regex
- --name
regex
- Verdadeiro se o nome de instância de serviço corresponder
à expressão regular fornecida.
- --path
regex
- Verdadeiro se o caminho de recurso de URI corresponder à
expressão regular fornecida.
- -P
number[-number]
- --port
number[-number]
- Verdadeiro se o porto corresponder ao número ou alcance
fornecido.
- -p
- --print
- Escreve o URI se o resultado das expressões anteriores for
verdadeiro. O resultado é sempre verdadeiro.
- -q
- --quiet
- Modo silêncio - apenas retorna os códigos de saída em
baixo.
- -r
- --remote
- Verdadeiro se o serviço não for local para este
computador.
- -s
- --print-name
- Escreve o nome de instância de serviço se o resultado das
expressões anteriores for verdadeiro. O resultado é sempre
verdadeiro.
- --true
- Sempre verdadeiro.
- -t key
- --txt key
- Verdadeiro se o registro TXT conter a chave nomeada.
- --txt-key
regex
- Verdadeiro se o registro TXT conter a chave nomeada e corresponder
à expressão regular fornecida.
- -u regex
- --uri
regex
- Verdadeiro se o URI corresponder à expressão regular
fornecida.
- -x utility [
argument ... ] ;
- --exec utility [
argument ... ] ;
- Executa o programa especificado se o resultado actual for verdadeiro. Os
argumentos de "{foo}" são substituídos pelos
valores correspondentes - veja SUBSTITUIÇÕES em baixo.
As expressões também podem conter modificadores:
- ( expression )
- Agrupa o resultado das expressões.
- ! expression
- --not
expression
- Unário NÃO (NOT) da expressão.
- expression
expression
- expression
--and expression
- E (AND) lógico das expressões.
- expression
--or expression
- OU (OR) lógico das expressões.
As substituições para "{foo}" em -e
e --exec são:
- {service_domain}
- Nome de domínio, ex., "example.com.", "local.",
etc.
- {service_hostname}
- Nome de domínio totalmente qualificado, ex.,
"printer.example.com.", "printer.local.", etc.
- {service_name}
- Nome de instância de serviço, ex., "My Fine
Printer".
- {service_port}
- Número de porto para o servidor, tipicamente 631 para IPP e 80 para
HTTP.
- {service_regtype}
- Tipo de registro DNS-SD, ex., "_ipp._tcp",
"_http._tcp", etc.
- {service_scheme}
- Esquema de URI para tipo de registro DNS-SD, ex., "ipp",
"http", etc.
- {}
- {service_uri}
- URI para serviço, ex., "ipp://printer.local./ipp/print",
"http://printer.local./", etc.
- {txt_key}
- Valor da key de registo TXT (minúsculas).
ippfind suporta as seguintes opções:
- --help
- Mostra a ajuda do programa.
- --version
- Mostra a versão do programa.
- -4
- Usa IPv4 ao listar.
- -6
- Usa IPv6 ao listar.
- -T seconds
- Especifica o tempo limite de procura em segundos. Se 1 ou menos, o
ippfind pára assim que pensa já ter encontrado tudo.
O tempo limite predefinido é 1 segundo.
- -V version
- Especifica a versão de IPP ao listar. Os valores suportados
são "1.1", "2.0", "2.1", e
"2.2".
ippfind retorna 0 se o resultado de todas as
expressões processadas for verdadeiro, 1 se o resultado de qualquer
uma das expressões processadas for falso, 2 se falhar ao navegar, em
qualquer consulta ou resolução, 3 se for especificada uma
opção não definida ou expressão inválida,
e 4 se esgotar a memória.
Quando executa um programa, o ippfind define as seguintes
variáveis de ambiente para o registrar do serviço
correspondente.
- IPPFIND_SERVICE_DOMAIN
- Nome de domínio, ex., "example.com.", "local.",
etc.
- IPPFIND_SERVICE_HOSTNAME
- Nome de domínio totalmente qualificado, ex.,
"printer.example.com.", "printer.local.", etc.
- IPPFIND_SERVICE_NAME
- Nome de instância de serviço, ex., "My Fine
Printer".
- IPPFIND_SERVICE_PORT
- Número de porto para o servidor, tipicamente 631 para IPP e 80 para
HTTP.
- IPPFIND_SERVICE_REGTYPE
- Tipo de registro DNS-SD, ex., "_ipp._tcp",
"_http._tcp", etc.
- IPPFIND_SERVICE_SCHEME
- Esquema de URI para tipo de registro DNS-SD, ex., "ipp",
"http", etc.
- IPPFIND_SERVICE_URI
- URI para serviço, ex., "ipp://printer.local./ipp/print",
"http://printer.local./", etc.
- IPPFIND_TXT_KEY
- Valores da KEY de registo TXT (maiúsculas).
Para mostrar o estado de todas as impressoras IPP registadas na
sua rede, corra:
ippfind --ls
De modo semelhante, para enviar uma página de teste
PostScript para todas as impressoras PostScript, corra:
ippfind --txt-pdl application/postscript --exec ipptool
-f onepage-letter.ps '{}' print-job.test \;
Copyright © 2021-2022 de OpenPrinting.