A rough utilization of Linux cat command would be to make a full disk backup or a disk partition backup or cloning of a disk partition by redirecting the command output against the partition of a hard disk, or USB stick or a local image file or write the output to a network socket.

你认为为什么我们应该使用 cat 而不是 dd,后者同样可以轻松完成相同的工作,这个想法是很正常的,然而,我最近意识到当涉及到速度和性能时,cat 比 dd 快得多。
I do agree that dd provides, even more, options and also very useful in dealing with large backups such as tape drives (How to Clone Linux Partitions Using ‘dd’ Command), whereas cat includes lesser option and it’s not necessarily a worthy dd replacement but still, remains an option wherever applicable.
建议阅读: 如何使用 Clonezilla 克隆或备份 Linux 磁盘
相信我,它可以很成功地完成将一个分区的内容复制到一个新的未格式化的分区的工作。唯一的要求是提供一个有效的硬盘分区,其大小至少与现有数据相同,并且没有任何文件系统。
在下面的示例中,第一个硬盘的第一个分区,对应于 /boot
分区即 /dev/sda1
,使用 Linux 重定向操作符克隆到第二个磁盘的第一个分区(即 /dev/sdb1
)。
# cat /dev/sda1 > /dev/sdb1

命令执行完成后,克隆的分区被挂载到 /mnt
,并且检查两个挂载点目录是否有任何文件丢失。
# mount /dev/sdb1 /mnt # ls /mnt # ls /boot

为了将分区文件系统扩展到最大大小,请使用以下具有 root 权限的命令。
建议阅读: 14款出色的Linux系统备份工具
$ sudo resize2fs /dev/sdb1

cat
命令是一个在Linux中操作文本文件和一些特殊多媒体文件的优秀工具,但应避免用于二进制数据文件或连接shebang文件。对于其他所有选项,请毫不犹豫地从控制台执行man cat
。
$ man cat
令人惊讶的是,还有另一个命令叫做tac,是的,我在说tac,它是cat命令的反向版本(也是倒着拼写),可以按照逆序显示文件的每一行,想了解更多关于tac的信息,请阅读在Linux中使用Tac命令。
Source:
https://www.tecmint.com/backup-or-clone-linux-partitions-using-cat-command/