Как вы видите, что это происходит «параллельно»?
С 8-символьным паролем у вас есть (26 + 26 + 10 + 12 =) 74 ^ 8 возможных слов. Делает уникальные слова для 899.194.740.203.776. С 3-секундной задержкой (это 3 ;-)), которая составляет 85,539,834 года (899,194,740,203,776 * 3 / (365 * 24 * 60 * 60)). Предположим, вам понадобится половина попыток, так что это будет 42.769.917 лет. Даже с попытками 100000 (возможно, я знаю) параллельно он будет (в среднем) занимать примерно 427 лет.
Система, нуждающаяся в защите (например, база данных учетной записи пользователя), будет иметь хороший набор паролей (так что 8 символов могут быть еще больше), а также настроить почтовую систему, чтобы предупредить администратора, что кто-то сильно терпят неудачу.
По-прежнему считаете, что это возможно?
Я хотел бы использовать команду awk следующим образом:
awk '{arr[$1]=arr[$1]d[$1]$NF; d[$1]="-"}
END{for (x in arr) print x"\t"arr[x]}' <(sort -V <(column -t infile))
column -t infile читает файл и здесь печатает только столбцы в левом выравнивании. sort -V сортирует файл как сортировку V. и awk, просто считывая поля в массив с именем arr с ключом как столбец # 1 и значением в качестве столбца №3, а затем в конце печатать элементы. Здесь я использовал замену процесса <(sort -V <(column -t infile)), в то время как мы могли бы использовать Pipes вместо этого, если ваша оболочка не поддерживает его, поскольку муро указывает /bin/dash. Вывод:
ID Domaind
1 Y-X-Z
2 L-M-N
3 J
4 I-k
Или вы можете использовать, как показано ниже, вместо того, чтобы держать весь файл в массиве.
awk 'p!=$1 &&p{print l}{l=($1!=p)?$1FS$3:l"-"$3;p=$1}' <(sort -V <(column -t in))
Я хотел бы использовать команду awk следующим образом:
awk '{arr[$1]=arr[$1]d[$1]$NF; d[$1]="-"}
END{for (x in arr) print x"\t"arr[x]}' <(sort -V <(column -t infile))
column -t infile читает файл и здесь печатает только столбцы в левом выравнивании. sort -V сортирует файл как сортировку V. и awk, просто считывая поля в массив с именем arr с ключом как столбец # 1 и значением в качестве столбца №3, а затем в конце печатать элементы. Здесь я использовал замену процесса <(sort -V <(column -t infile)), в то время как мы могли бы использовать Pipes вместо этого, если ваша оболочка не поддерживает его, поскольку муро указывает /bin/dash. Вывод:
ID Domaind
1 Y-X-Z
2 L-M-N
3 J
4 I-k
Или вы можете использовать, как показано ниже, вместо того, чтобы держать весь файл в массиве.
awk 'p!=$1 &&p{print l}{l=($1!=p)?$1FS$3:l"-"$3;p=$1}' <(sort -V <(column -t in))