批量添加删除用户方法三
2016-01-26 10:20
453 查看
方法三给出三种。本质上没有什么区别。只是是否生成配置文件,需要命令的个数不同。
方法三——1 #!/bin/bash file="user_passwd" #if [ -f "$file" ]; then # file2="$file"`date + %Y%m%d` # mv $file $file2 #fi if [ -f "$file" ]; then mv $file "$file"`date +%Y%m%d%H%M%S` fi touch "$file" read -p "please input filename:" filename read -p "please input number:" number read -p "please input start number:" start_number read -p "please input account number:" account_number end_number=$(($start_number + $account_number - 1)) for ((i=$start_number; i<=$end_number;i=i+1)) do zero='' len=${#i} diff=$(($number - $len)) if [ "$diff" != "0" ];then zeros=0000000000000000000000 zero=${zeros:0:$diff} fi user="$filename""$zero""$i" echo "$user"":""$user" >> $file done cat "$file" | cut -d ":" -f 1 |xargs -n 1 useradd pwunconv chpasswd < $file pwconv exit 0 方法三——2 #!/bin/bash read -p "please input filename:" filename read -p "please input number:" number read -p "please input start number:" start_number read -p "please input account number:" account_number end_number=$(($start_number + $account_number - 1)) for ((i=$start_number; i<=$end_number;i=i+1)) do zero='' len=${#i} diff=$(($number - $len)) if [ "$diff" != "0" ];then zeros=0000000000000000000000 zero=${zeros:0:$diff} fi user="$filename""$zero""$i" useradd $user echo "$user" | passwd --stdin $user done exit 0 方法三——3 #!/bin/bash read -p "please input filename:" filename read -p "please input number:" number read -p "please input start number:" start_number read -p "please input account number:" account_number read -p "please input flag sign(add or del):" flag end_number=$(($start_number + $account_number - 1)) for ((i=$start_number; i<=$end_number;i=i+1)) do zero='' len=${#i} diff=$(($number - $len)) if [ "$diff" != "0" ];then zeros=0000000000000000000000 zero=${zeros:0:$diff} fi user="$filename""$zero""$i" if [ "$flag" == "add" ]; then echo "$user will be added" useradd $user echo "$user" | passwd --stdin $user elif [ "$flag" == "del" ]; then echo "$user will be deleted" userdel -r $user else echo " input error" exit 1 fi done exit 0
相关文章推荐
- 一个简单的BitTorrent客户端实现(二):种子文件解析及信息保存
- tcp连接超时处理
- Xcode7 模拟器安装app (转)
- Nginx + Apache 公用 80 端口的配置方案。
- 欢迎使用CSDN-markdown编辑器
- Android Notification
- angularjs使用gulp-uglify压缩后执行报错
- 如何构建用户画像
- UVA12563Jin Ge Jin Qu hao(01背包)
- 库克低调訪富士康:无欢迎仪式 坐便宜商务车
- JSTL 核心标签库 使用(C标签)
- 前后台Json的转换
- c3p0配置详解
- 2016年这些 Android 技术必火(转载)
- 1月第3周网络安全报告:被篡改的.COM网站占74.3%
- Django1.6+jQuery Ajax + JSON 实现页面局部实时刷新
- 同域下iframe父、子间互相操作dom元素
- JAVA计算地球上任意两点(经纬度)距离
- svn: E200030: sqlite[S11]: database disk image is malformed
- struts1+jdbc增删改查