Linux批量建立使用者指令碼
!/bin/bash
這支程式主要在幫您建立大量的帳號之用,更多的使用方法請參考:
http://linux.vbird.org/linux_basic/0410accountmanager.php#manual_amount
本程式為鳥哥自行開發,在 CentOS 5.x 上使用沒有問題,
但不保證絕不會發生錯誤!使用時,請自行負擔風險~
History:
2005/09/05 VBird 剛剛才寫完,使用看看先~
2009/03/04 VBird 加入一些語系的修改與說明,修改密碼產生方式 (用 openssl)
export LANG=zh_TW.big5
export PATH=/sbin:/usr/sbin:/bin:/usr/bin
accountfile=”user.passwd”
1. 進行帳號相關的輸入先!
echo “”
echo “例如我們崑山四技的學號為: 4960c001 到 4960c060 ,那麼:”
echo “帳號開頭程式碼為 :4”
echo “帳號層級或年級為 :960c”
echo “號碼數字位數為(001~060):3”
echo “帳號開始號碼為 :1”
echo “帳號數量為 :60”
echo “”
read -p “帳號開頭程式碼 ( Input title name, ex> std )======> ” username_start
read -p “帳號層級或年級 ( Input degree, ex> 1 or enter )=> ” username_degree
read -p “號碼部分的數字位數 ( Input # of digital )======> ” nu_nu
read -p “起始號碼 ( Input start number, ex> 520 )========> ” nu_start
read -p “帳號數量 ( Input amount of users, ex> 100 )=====> ” nu_amount
read -p “密碼標準 1) 與帳號相同 2)亂數自訂 ==============> ” pwm
if [ “$username_start” == “” ]; then
echo “沒有輸入開頭的程式碼,不給你執行哩!” ; exit 1
fi
判斷數字系統
testing0=$(echo $nu_nu | grep `[^0-9]` )
testing1=$(echo $nu_amount | grep `[^0-9]` )
testing2=$(echo $nu_start | grep `[^0-9]` )
if [ “$testing0” != “” -o “$testing1” != “” -o “$testing2” != “” ]; then
echo “輸入的號碼不對啦!有非為數字的內容!” ; exit 1
fi
if [ “$pwm” != “1” ]; then
pwm=”2″
fi
2. 開始輸出帳號與密碼檔案!
[ -f “$accountfile” ] && mv $accountfile “$accountfile”$(date +%Y%m%d)
nu_end=$(($nu_start+$nu_amount-1))
for (( i=$nu_start; i<=$nu_end; i++ ))
do
nu_len=${#i}
if [ $nu_nu -lt $nu_len ]; then
echo “數值的位數($i->$nu_len)已經比你設定的位數($nu_nu)還大!”
echo “程式無法繼續”
exit 1
fi
nu_diff=$(( $nu_nu – $nu_len ))
if [ “$nu_diff” != “0” ]; then
nu_nn=0000000000
nu_nn=${nu_nn:1:$nu_diff}
fi
account=${username_start}${username_degree}${nu_nn}${i}
if [ “$pwm” == “1” ]; then
password=”$account”
else
password=$(openssl rand -base64 6)
fi
echo “$account”:”$password” | tee -a “$accountfile”
done
3. 開始建立帳號與密碼!
echo “帳密建置中,請稍待片刻!”
cat “$accountfile” | cut -d`:` -f1 | xargs -n 1 useradd -m
chpasswd < “$accountfile”
pwconv
echo “OK!建立完成!”
相關文章
- linux建立定時指令碼Linux指令碼
- Linux vsftp vuer虛擬使用者的建立批次指令碼LinuxFTPVue指令碼
- 通過shell指令碼 批量新增使用者指令碼
- Linux批量建立目錄Linux
- sqoop指令碼批量生成OOP指令碼
- Linux下批量ping某個網段ip的指令碼Linux指令碼
- hadoop_批量命令指令碼&同步檔案指令碼Hadoop指令碼
- Oracle 建立表空間和使用者指令碼Oracle指令碼
- linux建立使用者並設定密碼Linux密碼
- 批量修改檔名的bash指令碼指令碼
- 批量修改OC類名指令碼 -- python指令碼Python
- 命令列批量截圖Node指令碼命令列指令碼
- ExcelWeb指令碼助手,自定義指令碼,批量操作Excel與網頁ExcelWeb指令碼網頁
- 教你玩轉Linux—新增批量使用者Linux
- iOS使用shell指令碼批量修改屬性iOS指令碼
- Elasticsearch批量匯入資料指令碼(python)Elasticsearch指令碼Python
- 【AWR】Oracle批量生成awr報告指令碼Oracle指令碼
- 如何在linux中建立特定的指令碼註釋資訊Linux指令碼
- Linux指令碼分享Linux指令碼
- Linux Shell指令碼Linux指令碼
- 建立批次AD域使用者的指令碼可以使用 PowerShell 來實現。以下是一個簡單的示例指令碼,用於批次建立使用者:指令碼
- 【Linux】Linux安全加固指令碼Linux指令碼
- centos建立賬戶指令碼CentOS指令碼
- iOS使用Shell指令碼批量修改類名稱iOS指令碼
- 如何用 Python 指令碼批量下載 Google 影象?Python指令碼Go
- MySQL 批量更新、刪除資料shell指令碼MySql指令碼
- Linux建立使用者等操作Linux
- 教你如何用 Bash 指令碼傳送新使用者建立的郵件指令碼
- 建立 Docker 映象倉庫指令碼Docker指令碼
- 通過shell指令碼批量操作mysql資料庫指令碼MySql資料庫
- Linux建立使用者、設定密碼、修改使用者、刪除使用者命令Linux密碼
- 如何在Linux中使用Shell指令碼終止使用者會話?Linux指令碼會話
- 在系統建立新使用者時傳送郵件的 Bash 指令碼指令碼
- 跑wordpress使用者密碼指令碼密碼指令碼
- Linux下建立root/普通使用者Linux
- Linux埠探測指令碼Linux指令碼
- linux啟定時指令碼Linux指令碼
- linux常用的shell指令碼Linux指令碼
- linux 常用Mysql指令碼命令LinuxMySql指令碼