#!/bin/bashdate=$(date +%f_%t)
user_file=user.txt
echo_color()
#如果使用者檔案存在並大小大於0就備份
if [ -s $user_file ];then
mv$user_file $_$.bak
echo_color green
"$user_file exist,rename $_$.bak"fi
echo -e "
user\tpaassword
" >>$user_file
echo
"--------------------
" >>$user_file
for user in user;do
if ! id $user &>/dev/null; then
pass=$(echo $random | md5sum | cut -c 1-8
) useradd $user
echo $pass |passwd --stdin $user &>/dev/null
echo -e "
$user\t$pass
" >>$user_file
echo
"$user user create successful.
"else
echo_color red
"$user user already exists!"fi
done
其中用到的知識點:
echo $random 隨機生成一串數字
md5sum將某串數字或字元轉成長串字元
cut -c 1-8 取1到8位字元
Shell指令碼 批量建立使用者
格式為 使用者名稱 空格 tab 密碼 就是將資料分為兩列 users.txt文字內容示例 新建文字命令 touch create users.sh 編譯文字命令 vim create users.sh bin bash 批量建立使用者 while read line do 讀取line列表中的資料...
使用shell指令碼批量建立使用者
1 使用for語句批量新增與刪除特定使用者 for語句的操作物件為使用者指定名稱的變數,並通過in關鍵字為該變數預先設定了乙個取值列表,多個取值之間以空格進行分隔。為於do done之間的命令序列稱為迴圈體。新增使用者 root localhost vim list.txt 準備乙個使用者名稱列表檔...
shell指令碼 批量建立和刪除使用者
一 編寫shell指令碼批量新增使用者 實現方法 判斷使用者是否存在,存在則返回錯誤提示,同時判斷使用者檔案是否存在,不存在則退出 1 建立新增使用者指令碼 root localhost vim useradd.sh bin bash if eq 0 then echo 你沒有輸入任何檔案 exit...