自动化工具 想在手机上随机生成 1000 万 个文件,怎么搞?

sunny0330 · 2019年09月29日 · 最后由 sunny0330 回复于 2019年11月18日 · 2057 次阅读

目前有一种方法是通过 adb shell,串行方式,但是比较慢大概时间在 1 个多小时 0。
想问一下大家,又没有推荐的方式,给点帖子或者思路?
Python 能不能搞?

共收到 17 条回复 时间 点赞
浮云 回复

立马搞起来

浮云 回复

感谢,最近攻关才结束,忘记看了

下载个 Android Terminal,执行 shell 就 OK 了

#!/system/bin/sh

# $1 存储目录
# $2 文件数量
# $3 起始文件名数量
DD(){
echo "pid=$$"
local i=0
while true;do
    local name=$((i+$3))
    dd if=/dev/zero of=$1/$name.dat bs=4096 count=1 1>/dev/null 2>&1
    local i=$((i+1))
    if [ $i -eq $2 ];then
        break
    fi
done
echo $$ finish
}

folder=$3
if [ ! -d $folder ];then
    mkdir -p $folder
fi
#开多进程

#$1 进程数量
#$2 单进程文件数
#$3 存储位置
n=0
while true;do
    DD $folder $2 $(((n-1)*$2)) &
    n=$((n+1))
    echo "进程: $n"
    if [ $n -eq $1 ];then
        break
    fi
done
wait

存 sh 文件(unix 文本格式,utf8)push 到手机执行,参数参考注释

shell 的 dd 文件进行创建就够了,配置随机的生成大小,无非写个创建文件函数,传参控制。同时做多进程生成。

陈子昂 回复

文件数量是不能少的,1000 万个 4KB 文件,之前有看到自动填充到 32G 的文档,但是不符合数量

陈子昂 回复

可以啊,但是时间没有保障

SineIO 回复

测试性能

adb 有填充硬盘空间的办法,稍微改下。随机文件还是看你需求是什么,文件名后面序号 +1 也没啥问题吧。

我想问生成这么多文件搞啥子😂

seq 10000000 | xargs -i dd if=/dev/zero of={}.txt bs=10k count=1

Nick 回复

好的,没有搞过安卓,试试吧😂

YueChen 回复

这个没有试过,感觉是会快一些,没有搞过安卓,这个实施起来快吗

1.编写一个 apk 文件
2.应用多线程创建随机文件

编译一个 Android 可执行文件在 Android 内部运行是不是要快些?

我去催饭 回复

搞错了,不是 1000 个,是 1000 万,大小不小于 10Kb

做什么用啊,拷几个大文件不就行了,导照片

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册