Caso você esteja se perguntando, isso é apenas um uso menos comum da entrada redirecionador. O shell usa o arquivo especificado como entrada e seu comportamento padrão é fazer o eco para stdout.
O detalhamento do comando que você tem:
< /dev/urandom tr -dc A-Za-z0-9_ | head -c9
<
: redirecionador de entrada. Shell ecoa o conteúdo do arquivo (/ dev / urandom)
tr
: de tr --help
:
Translate, squeeze, and/or delete characters from standard input, writing to standard output.
As opções -dc são equivalentes a --delete --complement, o que significa excluir o complemento do seguinte conjunto de caracteres, ou seja, todos os caracteres NOT no conjunto. Isso exclui & não alfanumérico & sublinhar caracteres no seu exemplo.
head
: imprima as primeiras linhas de algo (padrão 10). a opção -c9 informa quantos bytes imprimir em vez de linhas.
Junte tudo e obtenha, "imprima os primeiros 9 bytes alfanuméricos ou sublinhados de / dev / urandom". :)