shell脚本批量生成测试用数据文件

为了测试hadoop对小文件的性能,所以用shell脚本生成了一千万个小文件用于测试.

一共生成了一千万个小文件,采用/的方式顺序写入1000个文件夹里面,然后每个文件夹里有一万个小文件.

文件里面我就存放了一个数字,如果需要的话,可以改成自己想要的

生成的脚本如下:

#!/bin/sh
source /etc/profile

#程序的最终输出目录
path="/a/zl/tmp"

if [ ! -d path ];
	then
		mkdir -p $path
fi

#生成多少个文件
for  index in {0..10000000}
do
    #确定最终输出目录里面有多少个子目录, 
    #这里是放到1000个文件夹里面了, 每个文件里面有1万个小文件
    #单个目录里面的文件数量不推荐超过100万,不然操作系统会很卡
    num=`expr $index / 10000`
    tmpPath="${path}/data_${num}"
    if [ ! -d $tmpPath ];
        then
            mkdir -p $tmpPath
    fi
     #输出一个数字到目标文件
    echo "${index}" > $tmpPath/bk-${index}.txt
done



    原文作者:张伯毅
    原文地址: https://blog.csdn.net/zhanglong_4444/article/details/109596322
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞