dullwhaleのメモ帳

何度も同じことを調べなくてよいように...

シェルでお手軽パスワード生成

LC_CTYPE=C tr -dc '0-9A-Za-z' < /dev/random | head -c 41 | pbcopy

少しだけ解説

/dev/randomからbyte列を読み取り、trで欲しいbyte以外をフィルタし、headで指定文字数だけ切り出している。 パスワードに使いたい文字集合をtrに指定する。 パスワード長はheadコマンドで指定する。

注意

  • pbcopymac限定だからlinuxなどでは取り除け。
  • LC_CTYPE=Ctrの動作がロケールによって変わることへの対策である。 環境によっては次のようなエラーを吐かれることがある。
tr: Illegal byte sequence