dd 命令究竟做了什么?

ICo*_*mer 8 linux usb unix filesystems dd

几天前,我很高兴地发现,在没有明确设计的第三方程序的帮助下,将 ISO 映像写入 USB 并不是那么困难。但是促进这一点的命令(或程序) - dd - 让我感到困惑。

根据维基百科,它旨在复制和转换原始数据,但老实说,我发现这个定义非常模棱两可且含糊不清。我知道它可以让您将一个数据转换为另一个数据,但是如果指定的输出文件太小而无法转换为指定的输入文件,会发生什么?

dd if=giant_file of=tiny_file
Run Code Online (Sandbox Code Playgroud)

此外,当我使用映像文件创建可引导 USB 时,USB 获得文件系统类型isofs,但如果我将存档或可执行文件写入驱动器,它会保留其常规文件系统类型。

对 dd 命令真正做什么或它如何在较低级别上工作的任何澄清将不胜感激。谢谢!

Ign*_*ams 8

dd执行从源到目标的逐字节复制,并带有由conv参数指定的可选转换。它执行读取和写入由指定*bs*flag选择,与由所限定的范围countskipseek选项。

如果指定的输出文件太小而无法转换为指定的输入文件会发生什么?

如果of太小而无法包含,if则数据将被截断以适合。请注意,如果of是常规文件,则它会被覆盖。


Pet*_*r.O 5

我什至不会尝试总结这些链接中的内容,但您可能会发现它们很有用(或太多信息)......它们都来自Unix 和 Linux(stackexchange)