在Linux中使用模式创建具有给定大小的大文件

时间:2017-12-07 16:54:25

标签: linux file large-files

在Linux中如何创建具有给定文本或十六进制模式的大文件(如DEADBEEFDEADBEEFDEADBEEF ....)

我知道dd可用于创建大文件,但它不会写入所需的文本或十六进制模式

dd if=/dev/urandom of=/tmp/bigfile bs=blocksize count=size

dd if=/dev/zero of=/tmp/bigfile bs=blocksize count=size

Quickly create a large file on a Linux system?

How to create a file with a given size in Linux?

2 个答案:

答案 0 :(得分:2)

while true ; do printf "DEADBEEF"; done | dd of=/tmp/bigfile bs=blocksize count=size

答案 1 :(得分:0)

如果您打算实现加扰数据而不是随机数据。

shuf folder/* | dd of=target.txt bs=1K count=2048

获取一个2MB的样本文件,然后您可以使用不同的数字来缩短或调用上面的命令

folder/* will contain files with your patterns

或者作为替代方案,您可以将十六进制值存储在单独的行中的单个文件中,并使用shuf根据您的需要对其进行随机播放并填充它们

shuf -n 100 source.txt | dd of=target.txt bs=1K count=2048

或者您可以将其转储为dd

dd if=source.txt of=target.txt bs=1K count=2048

Shuffle Documentation