我想在具有{a-f}{a-f}{A-Z}{0-9}{a-z}{a-z}
处理器和Intel Xeon E3-12xx v2 (Ivy Bridge
的debian服务器上使用(某种特定的)正则表达式(MemFree: 402108 kB
)创建密码列表。
crunch(来自Kali Linux)没有达到这个目的,因为似乎没有可能处理这个正则表达式,所以我写了一个脚本:
#!/bin/bash
touch words.txt
rm words.txt
for i in {a..f}{a..f}{A..Z}{0..9}{a..z}{a..z};
do echo $i >> words.txt;
done
exit 0
使用前五个括号({a..f}{a..f}{A..Z}{0..9}{a..z}
)可以正常工作,但是当我尝试添加最后一个{a..z}
时,内核会将其杀死。
我不知道为什么。是因为我的脚本必须一次又一次地打开.txt文件吗?或者是否存在其他容量问题?
祝你好运
答案 0 :(得分:3)
看起来你的RAM用完了,因为你在for
循环中创建了大量的字符串序列而不是迭代它。
使用两个循环(或更好的六个)而不是一个循环,您不会一次存储所有密码:
for i in {a..f}{a..f}{A..Z}
do for j in {0..9}{a..z}{a..z};
do echo $i$j >> words.txt;
done
done