What exactly does the dd command do?
dd
does a byte-by-byte copy from the source to the destination, with an optional conversion specified by the conv
argument. It performs reads and writes as specified by the *bs
and *flag
options, with the range defined by the count
, skip
, and seek
options.
what happens if the specified output file is too small to be turned into the specified input file?
If of
is too small to contain if
then the data is truncated to fit. Note that if of
is a regular file then it is overwritten.
I won't even try to summarize what is in these links, but you may find them useful (or too-much-info) ... They are both from Unix & Linux (stackexchange)
- dd vs cat — is dd still relevant these days?
- When is dd suitable for copying data? or, when are read() and write() partial?