我最近发现了这种从 bash 的 linux 提示符生成 9 个字符密码的方法:
< /dev/urandom tr -dc A-Za-z0-9_ | head -c9
Run Code Online (Sandbox Code Playgroud)
在<
做什么?
小智 11
如果您想知道,这只是输入重定向器的一种不太常见的用法。shell 将指定的文件作为输入,其默认行为是将其回显到 stdout。
您拥有的命令的细分:
< /dev/urandom tr -dc A-Za-z0-9_ | head -c9
Run Code Online (Sandbox Code Playgroud)
<
: 输入重定向器。Shell 回显文件的内容 (/dev/urandom)
tr
:来自tr --help
:
翻译、挤压和/或删除标准输入中的字符,写入标准输出。
选项-dc 等价于--delete --complement,意思是删除后面字符集的补码,即所有不在集合中的字符。这不包括您的示例中的非字母数字和下划线字符。
head
: 打印某些内容的前几行(默认为 10)。-c9 开关告诉它打印多少字节而不是行数。
把它们放在一起,你会得到,“从 /dev/urandom 打印出前 9 个字母数字或下划线字节”。:)
归档时间: |
|
查看次数: |
5267 次 |
最近记录: |