DD(1) DD(1) NAME dd - convert and copy a file SYNOPSIS dd [option=value] ... DESCRIPTION _D_d copies the specified input file to the specified output with possi‐ ble conversions. The standard input and output are used by default. The input and output block size may be specified to take advantage of raw physical I/O. _o_p_t_i_o_n _v_a_l_u_e_s if= input file name; standard input is default of= output file name; standard output is default ibs=_n input block size _n bytes (default 512) obs=_n output block size (default 512) bs=_n set both input and output block size, superseding _i_b_s and _o_b_s_; also, if no conversion is specified, it is par‐ ticularly efficient since no copy need be done cbs=_n conversion buffer size skip=_n skip _n input records before starting copy files=_n copy _n input files before terminating (makes sense only where input is a magtape or similar device). seek=_n seek _n records from beginning of output file before copying count=_n copy only _n input records conv=ascii convert EBCDIC to ASCII ebcdic convert ASCII to EBCDIC ibm slightly different map of ASCII to EBCDIC block convert variable length records to fixed length unblock convert fixed length records to variable length lcase map alphabetics to lower case ucase map alphabetics to upper case swab swap every pair of bytes noerror do not stop processing on an error sync pad every input record to _i_b_s ... , ... several comma-separated conversions Where sizes are specified, a number of bytes is expected. A number may end with k, b or w to specify multiplication by 1024, 512, or 2 respec‐ tively; a pair of numbers may be separated by x to indicate a product. _C_b_s is used only if _a_s_c_i_i_, _u_n_b_l_o_c_k_, _e_b_c_d_i_c_, _i_b_m_, or _b_l_o_c_k conversion is specified. In the first two cases, _c_b_s characters are placed into the conversion buffer, any specified character mapping is done, trailing blanks trimmed and new-line added before sending the line to the out‐ put. In the latter three cases, characters are read into the conver‐ sion buffer, and blanks added to make up an output record of size _c_b_s. After completion, _d_d reports the number of whole and partial input and output blocks. For example, to read an EBCDIC tape blocked ten 80-byte EBCDIC card images per record into the ASCII file _x_: dd if=/dev/rmt0 of=x ibs=800 cbs=80 conv=ascii,lcase Note the use of raw magtape. _D_d is especially suited to I/O on the raw physical devices because it allows reading and writing in arbitrary record sizes. SEE ALSO cp(1), tr(1) DIAGNOSTICS f+p records in(out): numbers of full and partial records read(written) BUGS The ASCII/EBCDIC conversion tables are taken from the 256 character standard in the CACM Nov, 1968. The ‘ibm’ conversion, while less blessed as a standard, corresponds better to certain IBM print train conventions. There is no universal solution. One must specify ‘‘conv=noerror,sync’’ when copying raw disks with bad sectors to insure _d_d stays synchronized. Certain combinations of arguments to _c_o_n_v_= are permitted. However, the _b_l_o_c_k or _u_n_b_l_o_c_k option cannot be combined with _a_s_c_i_i, _e_b_c_d_i_c or _i_b_m. Invalid combinations _s_i_l_e_n_t_l_y _i_g_n_o_r_e all but the last mutually-exclu‐ sive keyword. 4th Berkeley Distribution April 29, 1985 DD(1)