linux下DD 命令妙用 —— 筑梦之路

发布时间:2023年12月28日

之前写的关于dd命令的使用:

linux下dd命令的使用_sdymd-CSDN博客

linux下DD 命令常用操作 —— 筑梦之路_dd linux-CSDN博客


# 复制文件或设备

dd if=input_file of=output_file bs=block_size

# 创建空白文件

dd if=/dev/zero of=output_file bs=block_size count=number_of_blocks

dd: 这是命令本身,代表disk dump。
if=/dev/zero: 这是输入文件(input file)的路径。这里指定的是/dev/zero,这是一个特殊的设备文件,它只产生零字节(null bytes)。
of=output_file: 这是输出文件(output file)的路径。在这个例子中,输出的文件名为output_file。
bs=block_size: 这是块大小(block size)。这意味着每次读取和写入的数据块的大小。例如,如果block_size是4K,那么每次读取和写入的数据块将是4KB。
count=number_of_blocks: 这指定了要读取和写入的块数。因此,如果block_size是4K,并且number_of_blocks是100,那么将创建400KB的文件。
所以,这个命令的总体效果是从/dev/zero读取零字节,并将这些零字节写入到output_file中,总共写入number_of_blocks个块,每个块的大小为block_size


# 创建随机数据文件

dd if=/dev/urandom of=output_file bs=block_size count=number_of_blocks

# 制作设备镜像

dd if=input_device of=output_file bs=4M
# 显示进度

dd if=input_file of=output_file bs=4M status=progress

status=progress: 该参数显示复制进度信息,你可以在终端中看到复制的进度百分比和已经复制的数据量


# 错误处理

dd可以通过conv=sync,noerror参数进行错误处理,即使在读取错误的情况下,它也会继续进行操作。这在处理损坏的设备或损坏的文件时可能很有用

dd if=input_file of=output_file bs=4M conv=sync,noerror


# 跳过部分数据

有时候,你可能只对文件的一部分数据感兴趣。使用skip参数可以告诉dd跳过输入文件的前几个块。

dd if=input_file of=output_file bs=4M skip=10

上述命令将跳过输入文件的前10个块,只复制后续的数据


# 合并多个文件

通过使用if参数指定多个输入文件,你可以使用dd将它们合并成一个输出文件

dd if=input_file1 of=output_file bs=4M
dd if=input_file2 of=output_file bs=4M seek=1

seek=1表示在输出文件中跳过一个块,以确保新的数据追加到正确的位置

文章来源:https://blog.csdn.net/qq_34777982/article/details/135267560
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。