1.命令格式:
crunch <min-len> <max-len> [<charset string>] [options]
2.参数:
min-len crunch要开始的最小长度字符串。即使不使用参数的值,也需要此选项
max-len crunch要开始的最大长度字符串。即使不使用参数的值,也需要此选项
charset string 在命令行使用crunch你可能必须指定字符集设置,否则将使用缺省的字符集设置。缺省的设置为小写字符集,大写字符集,数字和特殊字符(符号),如果不按照这个顺序,你将得到自己指定结果。必须指定字符类型或加号的值。注意:如果你想在你的字符集中包含空格特征,你必须使用“\”字符或用引号括起来你的字符集,例如"abc "。如果有“+”指定,则后续格式中出现的类型从其中取值!
3.:
@: 代表小写字母
,: 代表大小字母
^: 代表特殊字符
%: 代表0-9
-b: 指定输出文件的大小,达到指定大小继续写入下一个文件,格式有kb,mb,gb,kib,mib,gib(前3个基于1000,后3个基于1024,数字与格式间没有空格)
-c: n 指定输出的行数(保留倒数的n行)
-p: 指定几个字符进行排序组合
-d: 限制重复字符的数量,例如:-d 2@ 表示最多有连续2个的小写字母相同
-e: string 表示生成到该字符停止
-s: string 表示从该字符开始生成
-l: 与-t 连用;将@,^%这几个字符实体化,后面要跟着想要实体化的字符不变其他的用x来代替,表示一种模式,后面实例会讲
-o: 将结果输出到文件
-z: gzip, bzip2, lzma, and 7z,将文件压缩,gzip最快,7z最慢但效果最好
-P: 读取filename.txt的文件内容
-t: pattern@,%^ 使用-t参数 指定pattern:必须保证min-length等于max-length
实例使用方法:
(1) 案例1生成字母组合
crunch 1 8
生成最小1位,最大8位,由26个小写字母为元素的所有组合
(2) 案例2生成指定字符组合
crunch 1 6 abcdefg
生成最小为1,最大为6,由字符串abcdefg开头,以字符串gggggg为结束的所有字符组合
(3) 案例3指定字符串加特殊字符的组合
crunch 1 6 abcdefg\
生成最小为1,最大为6,由abcdefg和空格为元素的所有组合(/代表空格)
注:指定字符集设置为占位符:使用 -t命令