我最近發現了這種在 bash 中從 linux 提示字元產生 9 個字元密碼的方法:
< /dev/urandom tr -dc A-Za-z0-9_ | head -c9
在做什麼<
?
答案1
如果你想知道,這只是一個不太常見的用法輸入重定向器的。 shell 將指定的檔案作為輸入,其預設行為是將其回顯到標準輸出。
您所擁有的命令的細分:
< /dev/urandom tr -dc A-Za-z0-9_ | head -c9
<
:輸入重定向器。 Shell 回顯檔案內容 (/dev/urandom)
tr
: 從tr --help
:
翻譯、壓縮和/或刪除標準輸入中的字符,寫入標準輸出。
選項-dc 相當於--delete --complement,表示刪除後面字元集的補集,即所有不在該集中的字元。這不包括範例中的非字母數字和下劃線字元。
head
:列印某些內容的前幾行(預設 10 行)。 -c9 開關告訴它要印多少位元組而不是行。
把它們放在一起,你會得到「印出 /dev/urandom 中的前 9 個字母數字或底線」。 :)
答案2
嘗試一下< /usr/include/stdio.h head
——它應該是文件,夥計。
如果您需要將程式輸出作為文件給出,可以透過以下方式完成:vim <(echo test)