はじめに
このチャレンジでは、ランダムなパスワードを生成する genpass.sh と呼ばれる bash スクリプトを実装します。生成されるパスワードは 12 文字の長さで、特定の要件を満たす必要があります。少なくとも 1 つの数字、1 つの大文字、1 つの小文字、および 1 つの特殊文字を含まなければなりません。この条件を満たし、実行するたびに異なるパスワードを返すパスワードジェネレータを作成することが目的です。Linux の乱数生成器や bash スクリプトプログラミングの基本などのトピックを探ります。
パスワードジェネレータ
LabEx 環境では、各ユーザーのユーザー名は「labex」ですが、パスワードはランダムです。
次の要件を満たすランダムなパスワードジェネレータを実装してください。
- 生成されるパスワードは 12 文字の長さである必要があります。
- パスワードには少なくとも 1 つの数字、1 つの大文字、1 つの小文字、および 1 つの特殊文字が含まれている必要があります。
- 許可されている特殊文字は、次のもののみです:
><+-{}:.&;。
目標
- 必要な zsh スクリプトを、既に
/home/labex/projectディレクトリに作成されているgenpass.shファイルに書き込みます。 genpass.shスクリプトは、はじめに記載された 3 つの条件を満たす必要があり、各実行時に異なるパスワードを生成する必要があります。- Linux の mkpasswd のような既製のパスワード生成ツールを使用しないでください。
- パスワード生成スクリプトは、各実行時に要件を満たすパスワードを返す必要があります。
出力
$ cd /home/labex/project
$ sh genpass.sh
2Dsxw9+xS:27
まとめ
おめでとうございます!パスワードジェネレータのチャレンジを完了しました。LabEx でさらに多くの実験を行って、スキルを向上させることができます。



