Adicione um comando grep
para filtrar as senhas geradas para aquelas que contêm os caracteres especiais:
LC_ALL=C </dev/urandom tr -cd '_a-zA-Z0-9-\?\!\=\/' | \
fold -w15 | grep '[\?\!\=\/]' | head -1
NOTAS:
-
Eu adicionei
LC_ALL=C
porque, dependendo da localidade do sistema,tr
produzirá o erro Seqüência de bytes ilegal se apresentada com dados binários (conforme gerado por / dev / urandom) . -
Em vez de
cat /dev/urandom
, use o redirecionamento:<file command
oucommand <file
.