|
|
1.1 root 1: .\" Copyright (c) 1990 The Regents of the University of California.
2: .\" All rights reserved.
3: .\"
4: .\" Redistribution and use in source and binary forms are permitted provided
5: .\" that: (1) source distributions retain this entire copyright notice and
6: .\" comment, and (2) distributions including binaries display the following
7: .\" acknowledgement: ``This product includes software developed by the
8: .\" University of California, Berkeley and its contributors'' in the
9: .\" documentation or other materials provided with the distribution and in
10: .\" all advertising materials mentioning features or use of this software.
11: .\" Neither the name of the University nor the names of its contributors may
12: .\" be used to endorse or promote products derived from this software without
13: .\" specific prior written permission.
14: .\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
15: .\" WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
16: .\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
17: .\"
18: .\" @(#)dd.1 6.3 (Berkeley) 7/24/90
19: .\"
20: .Dd July 24, 1990
21: .Dt DD 1
22: .Os BSD 4.4
23: .Sh NAME
24: .Nm dd
25: .Nd Convert and copy a file.
26: .Sh SYNOPSIS
27: .Nm dd
28: .Op options \&...
29: .Sh DESCRIPTION
30: The
31: .Nm
32: utility copies the specified input file to the specified
33: output with possible conversions.
34: .Pp
35: The following options are available:
36: .Tw Fl
37: .Tc Ic if=
38: .Ar file
39: .Cx
40: Input pathname; standard input is
41: default.
42: .Tc Ic of=
43: .Ar file
44: .Cx
45: Output pathname; standard output is
46: default.
47: .Tc Ic ibs=
48: .Ar n
49: .Cx
50: Input block size
51: .Va n
52: bytes (default is
53: 512 bytes).
54: .Tc Ic obs=
55: .Ar n
56: .Cx
57: Output block size (default is 512 bytes).
58: .Tc Ic bs=
59: .Ar n
60: .Cx
61: Set both input and output block size,
62: superseding
63: .Ic ibs
64: and
65: .Ic obs .
66: .Tc Ic cbs=
67: .Ar n
68: .Cx
69: Conversion buffer size
70: .Tc Ic skip=
71: .Ar n
72: .Cx
73: Skip
74: .Va n
75: input blocks (each block is the
76: size of
77: .Ic ibs )
78: before starting copy.
79: .Tc Ic seek=
80: .Ar n
81: .Cx
82: Seek n blocks (each block is the size of
83: obs) from beginning of output file before
84: copying.
85: .Tc Ic count=
86: .Ar n
87: .Cx
88: Copy only
89: .Va n
90: input blocks.
91: .Tc Ic conv=
92: .Ar value
93: .Oo
94: .Op \&, Ar value \&...
95: .Cx
96: .Oo
97: Where values are comma-separated symbols
98: from the following list.
99: .Tw Fl
100: .Tp Ic block
101: Convert variable length records to fixed
102: length.
103: Read characters into the
104: .Ic cbs
105: buffer, delete a trailing <newline>, and
106: pad to the length of the
107: .Ic cbs
108: buffer with
109: <space>s.
110: .Ic block
111: and
112: .Ic unblock
113: are mutually
114: exclusive.
115: .Tp Ic unblock
116: Convert fixed length records to variable
117: length.
118: Read a number of characters
119: equal to the size of the
120: .Ic cbs
121: buffer,
122: delete all trailing <blank>s, and append
123: a <newline>.
124: .Tp Ic lcase
125: Map characters in the alpha character
126: classification from class upper to the
127: corresponding value in class lower.
128: .Ic lcase
129: and
130: .Ic ucase
131: are mutually exclusive.
132: .Tp Ic ucase
133: Map characters in the alpha character
134: classification from class lower to the
135: corresponding value in class upper.
136: .Tp Ic swab
137: Swap every pair of bytes
138: .Tp Ic noerror
139: Do not stop processing on an error.
140: .Tp Ic sync
141: Pad every input block to the size of
142: .Ic ibs
143: buffer, appending <space> characters.
144: .Tp
145: .Tp
146: .Pp
147: Where sizes are specified, a decimal number of bytes is
148: expected.
149: A size can end with
150: .Cm k
151: or
152: .Cm b
153: to specify multiplication
154: by 1024 or 512, respectively.
155: A pair of sizes can be
156: separated by
157: .Cm x
158: to indicate a product.
159: .Pp
160: If the option
161: .Ic if=
162: is not specified, the standard input is used.
163: .Pp
164: The input files can be any file type and
165: on completion,
166: .Nm
167: writes the number of input and output
168: blocks, full and partial counts, to the standard error.
169: .Pp
170: A partial block may be caused by a read or write operation
171: transferring less than
172: .Ic ibs
173: bytes.
174: Only bytes read
175: have conversions, as specified by the options, applied to
176: them.
177: .Pp
178: For
179: .Li SIGINT ,
180: the
181: .Nm
182: utility writes status information to
183: standard error before exiting.
184: It takes the default action
185: for all other signals.
186: .Pp
187: The
188: .Nm
189: utility exits 0 on success, and >0 if an error occurs.
190: .Pp
191: If an error is detected, and the noerror option has not
192: been supplied, the cause is reported and the
193: .Nm
194: utility
195: aborts the copy of the file.
196: .Sh SEE ALSO
197: .Xr tr 1
198: .Sh STANDARDS
199: The
200: .Nm
201: function is expected to be POSIX 1003.2 compatible.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.