Сценарий
Согласно вашим требованиям, слова в вашем списке слов должны иметь:
- Два заглавных D то есть.
DD
последующим
- Два неповторяющихся заглавных символа, сопровождаемые
- Два неповторяющихся числа.
Исходя из требований, первое слово должно быть DDAB01
. Теперь рассмотрим эти два момента:
человек хрустит и ищет вариант -t
-t @,%^
Specifies a pattern, eg: @@god@@@@ where the only the @'s, ,'s,
%'s, and ^'s will change.
@ will insert lower case characters
, will insert upper case characters
% will insert numbers
^ will insert symbols
Таким образом, любой шаблон задается опцией -t
трактуется как буквенный символ для символов , за исключением @
и ^
которые заменяются символами , как определено хруст.
В вашем случае шаблон DD,,%%
который содержит 2 repeating literal uppercase D's
Теперь человек хруст и ищет -d
вариант
-d numbersymbol
Limits the number of duplicate characters. -d 2@ limits the
lower case alphabet to output like aab and aac. aaa would not
be generated as that is 3 consecutive letters of a. The format
is number then symbol where number is the maximum number of
consecutive characters and symbol is the symbol of the the
character set you want to limit i.e. @,%^
Вы написали в своей команде -d 1,
что означает «Нет повторения прописных букв», а -d 1%
означает «Нет повторения чисел».
Эта проблема
-d 1,
Вы указали опцию -d
, что должен быть только один экземпляр символов и чисел, игнорирующий любые повторения.
-t DD,,%%
Но вы прошли шаблон, который сам содержит повторение буквы D
Как только опция -d
встречает DD
в самом шаблоне, она завершает работу программы, генерируя 0 lines
. Надеюсь, теперь вы понимаете, что вы делали неправильно.
Решение / Обходной путь
Создайте список длиной 4 слова и направьте его в sed
или awk
чтобы добавить DD
в начале и, наконец, перенаправить в файл wordlist
.
crunch 4 4 -d 1,% -t ,,%% | sed 's/^/DD/' > wordlist
ИЛИ ЖЕ
crunch 4 4 -d 1,% -t ,,%% | awk '{ print "DD"$1 }' > wordlist
Не стесняйтесь добавлять дополнительные детали.