![创建许多包含随机内容的 1MB 文件,文件名从文本文件读取](https://linux22.com/image/179557/%E5%88%9B%E5%BB%BA%E8%AE%B8%E5%A4%9A%E5%8C%85%E5%90%AB%E9%9A%8F%E6%9C%BA%E5%86%85%E5%AE%B9%E7%9A%84%201MB%20%E6%96%87%E4%BB%B6%EF%BC%8C%E6%96%87%E4%BB%B6%E5%90%8D%E4%BB%8E%E6%96%87%E6%9C%AC%E6%96%87%E4%BB%B6%E8%AF%BB%E5%8F%96.png)
需要帮助创建具有随机数据的不同大小小于 1MB 的批量文件。
我的文件的文件名如下所示:
6d3a3f2e-ed34-11ea-adc1-0242ac120002||aaa
6d3a4000-ed34-11ea-adc1-0242ac120002||aaa
6d3a428a-ed34-11ea-adc1-0242ac120002||aaa
输出:具有上述文件名且不同大小小于 1 MB 的多个文件。
希望得到单行执行语句
答案1
未经测试:
while IFS= read -r filename; do
dd if=/dev/random of="$filename" bs=1MB count=1
done < file_with_filenames
它从输入文件 /dev/random 读取 1 个 1MB 字节的块,并复制到输出文件 $filename。
这不是不同大小的文件:每个文件大小为 1,000,000 字节。但你可以做类似的事情
dd bs=$((1000000 - RANDOM)) if=...