Bashシェルスクリプトでランダムな文字列を生成する
背景
Webサイトを見ていてたまたま urandom というものを見つけました。 これをうまく使うことでランダムな文字列を生成できます。
環境
$ uname -a
Darwin genzouw-no-MacBook-Pro.local 15.0.0 Darwin Kernel Version 15.0.0: Sat Sep 19 15:53:46 PDT 2015; root:xnu-3247.10.11~1/RELEASE_X86_64 x86_64 i386 MacBookPro10,1 Darwin
$ bash -version
GNU bash, バージョン 4.3.42(1)-release (x86_64-apple-darwin14.5.0)
Copyright (C) 2013 Free Software Foundation, Inc.
ライセンス GPLv3+: GNU GPL バージョン 3 またはそれ以降 <http://gnu.org/licenses/gpl.html>
This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
試してみる
ランダムな8文字の数字
$ cat /dev/urandom| tr -dc '[:digit:]'| head -c 8
18069591
ランダムな10文字の英数字
$ cat /dev/urandom| tr -dc 'A-Za-z0-9'| head -c 10
txdya1xDQn
その他
一部のサイトでは、以下の用に :digit: の部分を :alnum: にして英数字を出力しようとしているものもあったのだが、僕の環境では正常に動かなかった。 どうしても10文字出力されません。
$ cat /dev/urandom| tr -dc '[:digit:]'| head -c 10
ひとこと
Bashシェルスクリプトでも色々できますね。
ディスカッション
コメント一覧
まだ、コメントがありません