]> git.ipfire.org Git - thirdparty/cups.git/blame - man/ippfind.man
Save work on ippfind program. Nearly there.
[thirdparty/cups.git] / man / ippfind.man
CommitLineData
766a8229
MS
1.\"
2.\" "$Id$"
3.\"
4.\" ippfind man page for CUPS.
5.\"
6.\" Copyright 2013 by Apple Inc.
7.\"
8.\" These coded instructions, statements, and computer programs are the
9.\" property of Apple Inc. and are protected by Federal copyright
10.\" law. Distribution and use rights are outlined in the file "LICENSE.txt"
11.\" which should have been included with this file. If this file is
12.\" file is missing or damaged, see the license at "http://www.cups.org/".
13.\"
14.TH ippfind 1 "CUPS" "5 June 2013" "Apple Inc."
15.SH NAME
16ippfind - find internet printing protocol printers
17.SH SYNOPSIS
18.B ippfind
19[
20.I options
21] regtype[,subtype][.domain.] ... [
22.I expression ...
23]
24.B ippfind
25[
26.I options
27] name[.regtype[.domain.]] ... [
28.I expression ...
29]
30.B ippfind
31--help
32.B ippfind
33--version
34.SH SUPPORTED REGISTRATION TYPES
35\fIippfind\fR supports the following registration types:
36.TP 5
37_http._tcp
38HyperText Transport Protocol (HTTP, RFC 2616)
39.TP 5
40_https._tcp
41Secure HyperText Transport Protocol (HTTPS, RFC 2818)
42.TP 5
43_ipp._tcp
44Internet Printing Protocol (IPP, RFC 2911)
45.TP 5
46_ipps._tcp
47Secure Internet Printing Protocol (IPPS, draft)
48.TP 5
49_printer._tcp
50Line Printer Daemon (LPD, RFC 1179)
51
52.SH OPTIONS
53.TP 5
54--help
55Show program help
56.TP 5
57--version
58Show program version
59.TP 5
60-4
61Use IPv4 when listing
62.TP 5
63-6
64Use IPv6 when listing
65.TP 5
66-T seconds
67Specify find timeout in seconds. If 1 or less, \fIippfind\fR stops as soon as it thinks it has found everything. The default is 1 second.
68.TP 5
69-V version
70Specifies the IPP version when listing. Supported values are 1.1, 2.0, 2.1, and 2.2.
71
72.SH DESCRIPTION
73\fIippfind\fR finds printer services registered with the local DNS infrastructure or available through the local links.
74
75.SH EXPRESSIONS
76\fIippfind\fR supports expressions much like the \fIfind(1)\fR utility. However, unlike \fIfind\fR, \fIippfind\fR uses POSIX regular expressions instead of shell filename matching patterns. If -e, --exec, -l, --ls, -p, --print, --print-name, -q, --quiet, or -s is not specified, \fIippfind\fR adds --print to print the service URI of anything it finds. The following expressions are supported:
77.TP 5
78-d regex
79.TP 5
80--domain regex
81True if the domain matches the given regular expression.
82.TP 5
83-e utility [argument ...] ;
84.TP 5
85--exec utility [argument ...] ;
86Executes the specified program if the current result is true. "{foo}" arguments are replaced with the corresponding value - see SUBSTITUTIONS below.
87.TP 5
88--false
89Always false.
90.TP 5
91-l
92.TP 5
93--ls
94Lists attributes returned by Get-Printer-Attributes for IPP printers and traditional \fIfind\fR "-ls" output for HTTP URLs. The result is true if the URI is accessible, false otherwise.
95.TP 5
96--local
97True if the service is local to this computer.
98.TP 5
99-n regex
100.TP 5
101--name regex
102True if the service instance name matches the given regular expression.
103.TP 5
104--path regex
105True if the URI resource path matches the given regular expression.
106.TP 5
107-p
108.TP 5
109--print
110Prints the URI if the result of previous expressions is true. The result is always true.
111.TP 5
112-q
113.TP 5
114--quiet
115Quiet mode - just returns the exit codes below.
116.TP 5
117-r
118.TP 5
119--remote
120True if the service is not local to this computer.
121.TP 5
122-s
123.TP 5
124--print-name
125Prints the service instance name if the result of previous expressions is true. The result is always true.
126.TP 5
127--true
128Always true.
129.TP 5
130-t key
131.TP 5
132--txt key
133True if the TXT record contains the named key.
134.TP 5
135--txt-\fIkey\fR regex
136True if the TXT record contains the named key and matches the given regular
137expression.
138.TP 5
139-u regex
140.TP 5
141--uri regex
142True if the URI matches the given regular expression.
143.PP
144Expressions may also contain modifiers:
145.TP 5
146( expression )
147Group the result of expressions.
148.TP 5
149! expression
150.TP 5
151--not expression
152Unary NOT of the expression.
153.TP 5
154expression expression
155.TP 5
156expression --and expression
157Logical AND of expressions.
158.TP 5
159expression --or expression
160Logical OR of expressions.
161
162.SH SUBSTITUTIONS
163The substitutions for "{foo}" in -e and --exec are:
164.TP 5
165{}
166URI
167.TP 5
168{service_domain}
169Domain name, e.g., "example.com.", "local.", etc.
170.TP 5
171{service_hostname}
172Fully-qualified domain name, e.g., "printer.example.com.", "printer.local.", etc.
173.TP 5
174{service_name}
175Service instance name, e.g., "My Fine Printer".
176.TP 5
177{service_port}
178Port number for server, typically 631 for IPP and 80 for HTTP.
179.TP 5
180{service_regtype}
181DNS-SD registration type, e.g., "_ipp._tcp", "_http._tcp", etc.
182.TP 5
183{service_scheme}
184URI scheme for DNS-SD registration type, e.g., "ipp", "http", etc.
185.TP 5
186{service_uri}
187URI for service, e.g., "ipp://printer.local./ipp/print", "http://printer.local./", etc.
188.TP 5
189{txt_\fIkey\fR}
190Value of TXT record \fIkey\fR (lowercase).
191
192.SH ENVIRONMENT VARIABLES
193When executing a program, \fIippfind\fR sets the following environment variables for the matching service registration:
194.TP 5
195IPPFIND_SERVICE_DOMAIN
196Domain name, e.g., "example.com.", "local.", etc.
197.TP 5
198IPPFIND_SERVICE_HOSTNAME
199Fully-qualified domain name, e.g., "printer.example.com.", "printer.local.", etc.
200.TP 5
201IPPFIND_SERVICE_NAME
202Service instance name, e.g., "My Fine Printer".
203.TP 5
204IPPFIND_SERVICE_PORT
205Port number for server, typically 631 for IPP and 80 for HTTP.
206.TP 5
207IPPFIND_SERVICE_REGTYPE
208DNS-SD registration type, e.g., "_ipp._tcp", "_http._tcp", etc.
209.TP 5
210IPPFIND_SERVICE_SCHEME
211URI scheme for DNS-SD registration type, e.g., "ipp", "http", etc.
212.TP 5
213IPPFIND_SERVICE_URI
214URI for service, e.g., "ipp://printer.local./ipp/print", "http://printer.local./", etc.
215.TP 5
216IPPFIND_TXT_\fIKEY\fR
217Values of TXT record \fIKEY\fR (uppercase).
218
219.SH EXIT CODES
220\fIippfind\fR returns 0 if the result for all processed expressions is true, 1 if the result of any processed expression is false, 2 if browsing or any query or resolution failed, 3 if an undefined option or invalid expression was specified, and 4 if it ran out of memory.
221
222.SH SEE ALSO
223\fIipptool(1)\fR
224
225.SH COPYRIGHT
226Copyright 2013 by Apple Inc.
227.\"
228.\" End of "$Id$".
229.\"