一、问题描述:
向一个指定的目录下面不断产生指定大小的文件
二、解决思路:
<1>、根据题目关键字 "指定目录"、 "指定大小",所以该程序肯定有两个参数,一个参数指定目录,一个参数指定大小
<2>、还有一个关键字 "不断产生",所以程序主体肯定是一个死循环
<3>、最后一个关键字 "产生文件",怎么产生文件?
Linux中可以通过一个dd命令来产生指定大小的文件,具体用法如下:
举例说明:
dd if=/dev/zero of=./hello.txt bs=2M count=2 : 当前目录下生成一个叫hello.txt的2M大小的文件。
选项说明: if(input file):输入文件
of(output file):输出文件
bs(block size):块大小
count :块数
总的意思就是:从/dev/zero这个文件中拷贝两个块大小为2M的数据块到./hello.txt文件中,结果就是产生./hello.txt文件,这个文件大小是4M
三、有了思路,使用脚本代码实现:
脚本代码文件 11ExampleProductFile.sh
-
#!/bin/bash
-
path=$1 #获取指定目录名
-
size="$2M" #获取指定大小,单位为M
-
mkdir -p $path #创建指定目录
-
i=0
-
while [ true ]
-
do
-
#产生2*sizeM大小的文件
-
dd if=/dev/zero of=${path}/hello${i}.txt bs=$size count=2
-
((i++))
-
sleep 0.2
-
done
四、运行结果截图