在大小为128k的linux中创建一个文件,其数据有128k

时间:2015-01-15 09:40:09

标签: linux file unix dd

我想在大小为128k的linux中创建一个文件,其数据有128k。 最快的方法是什么?

2 个答案:

答案 0 :(得分:5)

为什么您需要最快的解决方案?将字节写入磁盘可能会成为瓶颈,所以只要它比输出介质的写入速率快,生成它们的速度并不重要。

dd if=/dev/zero bs=131072 count=1 |
tr '\000' '\377' >file

tr的不同变体使用略有不同的语法,因此您可能需要稍微调整一下。

这里有记忆力,但希望是完全便携的替代品;

perl -e 'printf("\xff" x 131072)' >file

答案 1 :(得分:3)

这比使用dd的任何内容都快一个数量级: - )

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

#define SIZE    (128*1024)
int main(){
   char *p=malloc(SIZE);
   memset(p,'\xff',SIZE);
   fprintf(stdout,p,SIZE);
}