sh3.useradd 添加用户脚本
1.写一个脚本:
添加10个用户user1到user10,密码同用户名,但要求只有用户不存在的情况下才能添加
#/bin/bash
#
for i in {..};do
if id user$i &> /dev/null;then
echo "user$i exists."
else
useradd user$i
echo user$i | passwd --stdin user$i &> /dev/null
echo "Add user$i finished!"
fi
done
~
2. 删除用户脚本
#/bin/bash
#
for i in {..};do
if id user$i &> /dev/null;then
userdel user$i
echo "user$i is delete!"
else
echo "user$i is no have!"
fi
done
userdel(选项)(参数)
-f:强制删除用户,即使用户当前已登录;
-r:删除用户的同时,删除与用户相关的所有文件。
3.扩展:
接受一个参数:
add: 添加用户 user1..user10
del:删除用户 user1..user10
其它:退出
#/bin/bash
#
if [ $# -lt ];then
echo "Usage:adminiuser ARG"
exit
fi if [ $ == 'add' ];then
for i in {..};do
if id user$i &> /dev/null;then
echo "user$i is exists"
else
useradd user$i
echo user$i | passwd --stdin user$i &> /dev/null
echo "Add user$i finished."
fi
done
elif [ $ == 'del' ];then
for i in {..};do
if id user$i &> /dev/null;then
userdel -r user$i
echo "Del user$i finished."
else
echo "NO user$i"
fi
done
else
echo "Unknown ARG"
exit
fi
4.优化版本:
自选添加或删除多用户
admin add user1,user2,user3
admin del user1,user2,user3
#/bin/bsh
#
if [ $# -lt ];then
echo "Usage:ARG"
exit
fi
if [ $ == 'add' ];then
for i in `echo $ | sed 's/,/ /g'`;do
if id $i &> /dev/null;then
echo "user $i exists."
else
useradd $i
echo $i | passwd --stdin $i &> /dev/null
echo "Add user $i finished!"
fi
done
elif [ $ == 'del' ];then
for i in `echo $ | sed 's/,/ /g'`;do
if id $i &> /dev/null;then
userdel -r $i
echo "Del user $i finshed!"
else
echo "user $i exists."
fi
done
elif [ $ == '--help' ];then
echo " Your want add-user 'adminuser add username1,name2..!'.
Your want del-user'adminuser del username1,name2..!'"
else
echo "Unknow ARG??? --help "
fi 注: echo aa,bb,cc | sed 's/,/ /g'
用sed替换命令把‘aa,bb,cc’ 转成列表式,再给for循环调用
sh3.useradd 添加用户脚本的更多相关文章
- linux命令useradd添加用户
linux命令useradd添加用户详解 1.作用 useradd或adduser命令用来建立用户帐号和创建用户的起始目录,使用权限是超级用户. 2.格式 useradd [-d home] [-s ...
- 工程师技术(五):Shell脚本的编写及测试、重定向输出的应用、使用特殊变量、编写一个判断脚本、编写一个批量添加用户脚本
一.Shell脚本的编写及测 目标: 本例要求两个简单的Shell脚本程序,任务目标如下: 1> 编写一个面世问候 /root/helloworld.sh 脚本,执行后显示出一段话“Hello ...
- shell编写一个批量添加用户脚本
shell编写一个批量添加用户脚本 5.1问题 本例要求在虚拟机server0上创建/roo ...
- useradd添加用户
sudo useradd -m -s /bin/bash $user sudo passwd $user linux useradd/userdel 命令 转自:http://hi.baidu.com ...
- linux命令useradd添加用户详解
1.作用 useradd或adduser命令用来建立用户帐号和创建用户的起始目录,使用权限是超级用户. 2.格式 useradd [-d home] [-s shell] [-c comment] [ ...
- 【转】linux命令useradd添加用户详解
在linux中增加用户我们使用useradd命令而删除用户直接使用userdel即可了,下面小编来给各位同学介绍一下在linux中添加与删除用户方法吧. 1.作用 useradd或adduser命 ...
- Linux useradd 添加用户
在 linux 中,如果我们想添加一个用户,那么使用的命令如下: 用户管理命令: useradd 基础的命令 命令名称:useradd 命令的所在路径:/usr/bin/useradd 执行权限:ro ...
- useradd 添加用户
功能介绍 useradd命令用于Linux中创建的新的系统用户.useradd可用来建立用户帐号.帐号建好之后,再用passwd设定帐号的密码.而可用userdel删除帐号.使用useradd指令所建 ...
- linux useradd添加用户
useradd命令用来建立用户帐号和创建用户的起始目录,使用权限是超级用户. useradd -m -s /bin/bash -g 群组名 用户名 其中 -m:自动建立用户的登入目录. -s:指定用户 ...
随机推荐
- windows下安装kibana出 "EPERM: operation not permitted
D:\kibana-\bin>kibana-plugin install file:///x-pack-5.0.0.zip Attempting to transfer from file:// ...
- centos在线安装svn
centos在线安装svn 用下列命令安装svn服务 yum install subversion 创建svn版本库目录 mkdir -p /var/svn/svnrepos 创建版本库 svnadm ...
- C#工具代码
反射获取当前请求参数 var prop = System.Type.GetType("System.Web.HttpContext, System.Web, Version=4.0.0.0, ...
- Android Studio解决未识别Java文件(出现红J)问题
1.问题:java文件出现了红J的问题,正常情况下应该是显示蓝色的C标识. 2.解决方案:切换到project视图下,找到app这个module里的build.gradle,在android结构里插入 ...
- canvas-炫丽的倒计时效果Canvas绘图与动画基础
canvas 是基于转台来绘制的 来了解一下canvas的浏览器兼容性问题,如下图所示.(截图自can i use) tips:刚刚拿去ie8下测了一下,什么反应都没有,提前设定好的,如果该浏览器不支 ...
- [原创] C# dynamic拼接Json串
using Newtonsoft.Json; 之前拼接两个json串,是用的这样的代码 , json1.Length - ); json2 = json2.Insert(json2 - , tmp); ...
- U盘存放大于4G数据文件且无须格式化U盘的解决方法
现在优盘的容量越来越大了,价格越来越便宜,可是它也有个缺点,因为它默认的文件系统是"FAT32",这种文件系统最大只能保存4G的文件,超过4G的文件就不能保存在优盘上了,这样就不能 ...
- UUID库
If you cannot afford to use Boost, then there is a very minimal library that I implemented which sim ...
- 常见ES5方法
• ES5 JSON扩展JSON.parseJSON.stringify • ES5 Object扩展Object.createObject.keys • Date对象Date.now • ES5 F ...
- iOS组件化思路 <转>
随着应用需求逐步迭代,应用的代码体积将会越来越大,为了更好的管理应用工程,我们开始借助CocoaPods版本管理工具对原有应用工程进行拆分.但是仅仅完成代码拆分还不足以解决业务之间的代码耦合,为了更好 ...