linux批量新增使用者指令碼
#!/bin/bash
#add users
for name in `cat /usr/local/shfile/name_pwd.txt|cut -d " " -f 1`;do
#從檔案中獲取密碼
#add users
for name in `cat /usr/local/shfile/name_pwd.txt|cut -d " " -f 1`;do
#從檔案中獲取密碼
pswd=`cat /usr/local/shfile/name_pwd.txt|awk -v name="${name}"
'{if($1 == name) print$2}'`
home=`cat /usr/local/shfile/name_pwd.txt|awk -v name="${name}" '{if($1 == name) print$3}'`
if [ ! -d $( dirname ${home} ) ];then
mkdir -p $( dirname ${home} )
fi
#判斷使用者名稱和密碼是否為空,有一為空就退出迴圈
if [ -n "${name}" ]&&[ -n "${pswd}" ];then
#判斷使用者是否已經存在,存在的話就不新增
cat /etc/passwd|grep "^${name}">/dev/null
if [ $? -ne 0 ];then
#新增使用者
useradd -d ${home} ${name}
#判斷密碼長度是否足夠,小於6位的密碼為不合法的
pswd_len=`echo ${#pswd}`
if [ "${pswd_len}" -lt 6 ];then
echo "password ${pswd} is too short"
else
#給新新增的使用者修改密碼
echo ${pswd}|passwd --stdin ${name}
fi
else
#提示當前使用者已存在
echo "${name} is exist"
fi
fi
done
#End of file
使用者_密碼檔案
[root@192 shfile]# cat name_pwd.txt
etnet1 etnet123 /home/etnet1
etnet2 etnet234 /home/etnet2
etnet3 etnet345 /home/etnet3
home=`cat /usr/local/shfile/name_pwd.txt|awk -v name="${name}" '{if($1 == name) print$3}'`
if [ ! -d $( dirname ${home} ) ];then
mkdir -p $( dirname ${home} )
fi
#判斷使用者名稱和密碼是否為空,有一為空就退出迴圈
if [ -n "${name}" ]&&[ -n "${pswd}" ];then
#判斷使用者是否已經存在,存在的話就不新增
cat /etc/passwd|grep "^${name}">/dev/null
if [ $? -ne 0 ];then
#新增使用者
useradd -d ${home} ${name}
#判斷密碼長度是否足夠,小於6位的密碼為不合法的
pswd_len=`echo ${#pswd}`
if [ "${pswd_len}" -lt 6 ];then
echo "password ${pswd} is too short"
else
#給新新增的使用者修改密碼
echo ${pswd}|passwd --stdin ${name}
fi
else
#提示當前使用者已存在
echo "${name} is exist"
fi
fi
done
#End of file
使用者_密碼檔案
[root@192 shfile]# cat name_pwd.txt
etnet1 etnet123 /home/etnet1
etnet2 etnet234 /home/etnet2
etnet3 etnet345 /home/etnet3
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/27181165/viewspace-775751/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 通過shell指令碼 批量新增使用者指令碼
- Linux批量建立使用者指令碼Linux指令碼
- shell指令碼批量操作使用者指令碼
- 教你玩轉Linux—新增批量使用者Linux
- shell指令碼建立使用者及批量建立使用者指令碼
- 新增多個使用者的shell指令碼指令碼
- 批量生成DDL指令碼指令碼
- 批量改名的指令碼指令碼
- 多例項MySQL批量新增使用者和密碼並授權MySql密碼
- linux下批量修改使用者密碼Linux密碼
- Linux 新增指令碼開機自啟動Linux指令碼
- linux下新增oracle自啟動指令碼LinuxOracle指令碼
- sqoop指令碼批量生成OOP指令碼
- 3. 批量新增多個使用者
- 一個指令碼解決AD使用者批量操作問題指令碼
- linux新增策略路由python指令碼(待完善)Linux路由Python指令碼
- hadoop_批量命令指令碼&同步檔案指令碼Hadoop指令碼
- 批量move tablespace 指令碼範例指令碼
- ANT批量執行Jmeter指令碼JMeter指令碼
- Linux下批量ping某個網段ip的指令碼Linux指令碼
- linux下通過sql檔案批量操作指令碼樣本LinuxSQL指令碼
- 使用SQL批量查詢出建立使用者及許可權指令碼SQL指令碼
- 命令列批量截圖Node指令碼命令列指令碼
- 批量修改檔名的bash指令碼指令碼
- 批量匯出建立索引的指令碼索引指令碼
- ExcelWeb指令碼助手,自定義指令碼,批量操作Excel與網頁ExcelWeb指令碼網頁
- linux 指令碼切換使用者不用輸入密碼Linux指令碼密碼
- iOS使用shell指令碼批量修改屬性iOS指令碼
- 批量修改OC類名指令碼 -- python指令碼Python
- 【AWR】Oracle批量生成awr報告指令碼Oracle指令碼
- 儲存過程批量生成awr指令碼儲存過程指令碼
- 轉貼:批量生成awr報告指令碼指令碼
- 【工具】批量刪除binlog 的指令碼指令碼
- Linux使用者登入記錄分析指令碼Linux指令碼
- Laravel Homestead 新增映象指令碼Laravel指令碼
- shell指令碼和python指令碼實現批量ping IP測試指令碼Python
- Win2003新增新使用者執行指令碼注意指令碼
- 程式碼批量新增ACL管理員許可權