ユーザーは、ユーザー名とパスワードを入力するように求められ、スクリプトが自動的にアカウントを作成し、パスワードが設定されています。アカウント名を入力しない場合は、アカウント名プロンプトを入力して、スクリプトを終了しなければなりません。ユーザーはパスワードを入力しない場合、デフォルトでは、デフォルトのパスワードとして123456を統一します。
文字列演算子
第二に、アカウントを作成します
読みコマンドリファレンスURL:https://www.cnblogs.com/xiangzi888/archive/2012/03/27/2420084.html
[VM_0_10_centosシェルスクリプト@ルート]#viのautoCreateUser.sh #!/ binに/ bashの #スクリプト:ユーザー名とパスワードを入力するようにユーザに促す、スクリプトが自動的にアカウントを作成し、パスワードが設定されています。ユーザーの場合 #アカウント名を入力しないでください、あなたはアカウント名プロンプトを入力して、スクリプトを終了しなければなりません。ユーザーはパスワードを入力しない場合、デフォルトの団結を使用します #認識可能 123456 デフォルトのパスワードとして。 読み -p「ユーザー名を入力してください:」ユーザ名を # - Zは、変数が空であるか否かを判断します。空の場合は、ユーザーにプロンプトを表示すると、アカウント名を入力し、終了コード2でスクリプトを終了する必要があります #は、アカウント名を入力して終了$を使用していませんでした?リターンコードを確認してください2 のIF [ - Zの$ユーザ名]; それから エコー「あなたは、アカウント名を入力する必要があり、」 出口 2 されます #を使用するにstty - 閉殻エコー機能エコー(つまり、パスワードはコマンドライン入力では表示されません) オープンの#使用sttyのエコーエコーシェル sttyの - エコー 読み -p「パスワードを入力してください:」パスを sttyのエコー 合格 = $ {を渡す:-123456を} useraddの "$ユーザー名" エコー "$パス" | passwdの--stdin "$ユーザー名"
スクリプトを実行する前に実行する権限が与えられました
chmod A + Xスクリプト名
第三に、アカウントを削除
(-rも、ホームディレクトリを削除)、アカウントを削除するには、コマンドを使用します
[ルート@ VM_0_10_centos〜]#userdelの-rアカウント名
#================================== #アカウントとホームディレクトリを削除します。 読んで「削除するアカウントを入力してください:」-p ユーザー名を 場合は、[ - Zの$のユーザー名]。 それから エコー「を削除あなたはアカウント名を入力する必要があり、」 出口 2を されます userdelの - のR $のユーザー名 エコー「ユーザーが成功を削除します!」; # ==================================
第四に、バッチは、アカウントを作成します
アカウントのパスワードによるとtxtファイルを作成し、スクリプトによって設定されたファイルを作成するために、アカウントとパスワードを読んで
TXTファイルは説明していない、注意すべき点は、区切り文字として、アカウントとパスワードの間、あなたが対応する区切り文字にスクリプトを変更する必要がありますされているものです
[ルートVM_0_10_centosシェルスクリプト@]#猫のcreateUsers.sh #!/ binに/ bashの USERS.TXTを読み取ることによって、アカウントを追加するには#バッチファイル エコー$ 0 = $ 0 $エコー 1 = $ 1 であれば [$#-eq 0 ];その後 エコー「[使い方]してくださいアカウントを作成するために、バッチファイルを入力します。./ createUsers.sh USERS.TXT」 出口 0 されます リードコマンドの出力は、ラインに読み出した値を読み込む入力として#猫コマンド 猫$ 1 | 一方、読み込んだ行が 行います #エコー$行(情報の出力ライン) awkの#1 -F「」スペースで区切っ(TXTが:,場所の場合:パーティション) ユーザ名 = $($ラインをエコー| awkの-F "" '{$ 1印刷}' ) パス = $(エコー$行| awkの-F "" '{$ 2印刷}' ) useraddの$のユーザー名 エコー「$パス」| "$ユーザー名" --stdin passwdを 完了
第五に、バルクは、アカウントを削除します
アカウントのパスワードによるとtxtファイルを作成し、スクリプトによって設定されたアカウントを読んで、削除するファイルを作成します
[VM_0_10_centosシェルスクリプト@ルート]#猫delUsers.sh #!/ binに/ bashの 一括削除# エコー$ 0 = $ 0 $エコー 1 = $ 1 であれば [$#-eq 0 ];その後 エコー「[使い方]してくださいアカウントを作成するために、バッチファイルを入力します。./ createUsers.sh USERS.TXT」 出口 0 されます リードコマンドの出力は、ラインに読み出した値を読み込む入力として#猫コマンド 猫$ 1 | 一方、読み込んだ行が 行います #エコー$行 awkの#1 -F「」スペースで区切っ(TXTが:,場所の場合:パーティション) ユーザ名 = $($ラインをエコー| awkの-F "" '{$ 1印刷}' ) userdelの - のR $のユーザー名 完了