Skip to content

antony@notes:~/ops-automation$ cat "alpuser.sh.md"

`alpuser.sh`

2022-08-07· ops-automation ·Shell Script

alpuser.sh

功能

  • create
    • 自動建立使用者
  • delete
    • 刪除使用者
  • list
    • 查看使用者

#!/bin/bash
clear

if [ "$1" != "" ];then
  case $1 in
    create)

           if [ "$2" != "" ];then
             p=$(< /dev/urandom tr -dc A-Za-z0-9 | head -c6)
             cat /etc/passwd | grep $2 &>/dev/null

                                                            if [ "$?" != "0" ];then
                                                              echo -e "${p}\n${p}" | sudo adduser -h /home/$2 -s /bin/bash $2 &>/dev/null
                                                              [ "$?" == "0" ] && ls -l /home/$2 &>/dev/null
                                                              [ "$?" == "0" ] && echo -e "\n${2} 使用者建立成功!\n您的密碼是: ${p}" || echo "$2  建立失敗,請再試一次!" && exit 1
                                                            else
                                                              echo "${2}使用者已存在!" && exit 1
                                                            fi
           else
             echo "請輸入要建立的使用者帳號!" && exit 1
           fi
  ;;

    delete)

           if [ "$2" != "" ];then
             cat /etc/passwd | grep ${2} &>/dev/null
                                                     if [ "$?" == "0" ];then
                                                       sudo deluser --remove-home ${2} &>/dev/null
                                                       [ "$?" == "0" ] && echo "${2} 使用者刪除成功!" || echo "${2} 使用者刪除失敗,請再試一次!"
                                                     else
                                                       echo "${2}使用者不存在!" && exit 1
                                                     fi
           else
             echo "請輸入要刪除的使用者帳號!" && exit 1
           fi
  ;;

    list)

        if [ "$2" != "" ];then
          cat /etc/passwd | grep "$2" && echo "已查詢到${2} 使用者資訊!" || echo "您要查詢的${2} 使用者不存在!"
        else
          echo "請輸入要查詢的使用者帳號!"
        fi
  ;;

    *)

      echo "請輸入參數 ( create / delete / list ) 其中一個,謝謝!"
  ;;
  esac
fi
tags: Shell Script