为什么脚本执行一行就不动了_Centos7 批量创建用户账号脚本
前言:
学习或生产工作中,你可能遇到批量创建 Centos 用户的情况,一段shell 脚本来帮助你:
如何做:
0,我们把脚本保存为 ac.sh;
1,提前建立一个 accountadd.txt 的文本,一行一个写入需要建立的用户名;
2,使用 # ./ac.sh create 来执行批量创建;
3,密码会存入当前目录的 outputpw.txt;
4,使用 # ./ac.sh delete 来执行批量删除;
脚本:
# 0. 这个shell 会为你批量建立 user 账号;# 1. 检查 "accountadd.txt" 是否存在? 你需要先手工建立这个文本;# 2. "accountadd.txt" 中一个用户名一行;# 3. 使用 openssl 创建 users password;# 4. 设定新用户初次登录必须修改密码;# 0. userinput usergroup="" # 需要建立新组,在这里添加;pwmech="openssl" homeperm="no" # if "yes" then it will modify home dir permission to 711 # 1. check the accountadd.txt file action="${1}" # 命令动作,建立用户使用"create",删除用户使用 "delete" ;if [ ! -f accountadd.txt ]; then echo "没有 accountadd.txt 文件!" exit 1fi # 2. 执行 [ "${usergroup}" != "" ] && groupadd -r ${usergroup}rm -f outputpw.txtusernames=$(cat accountadd.txt) for username in ${usernames}do case ${action} in "create") [ "${usergroup}" != "" ] && usegrp=" -G ${usergroup} " || usegrp="" useradd ${usegrp} ${username} # 新增账号; [ "${pwmech}" == "openssl" ] && usepw=$(openssl rand -base64 6) || usepw=${username} echo ${usepw} | passwd --stdin ${username} # 创建密码; chage -d 0 ${username} # 设定新用户初次登录必须修改密码; [ "${homeperm}" == "yes" ] && chmod 711 /home/${username} echo "username=${username}, password=${usepw}" >> outputpw.txt ;; "delete") echo "deleting ${username}" userdel -r ${username} ;; *) echo "Usage: $0 [create|delete]" ;; esacdone
执行创建:
# ./ac.sh create
查看密码:
# cat outputpw.txt
批量删除:
# ./ac.sh delete
代码高亮截图:
还要注意:
如果你在windows下复制粘贴编辑脚本代码,
若出现异常情况,请把 windows 换行符 替换成 linux 换行符:
以上面的脚本举例,执行下面代码转换换行符:
# sed -i 's///' ac.sh
- window下默认是
- linux下是
- unix下是
人的生命是有限的,只有知识永存!
为什么脚本执行一行就不动了_Centos7 批量创建用户账号脚本相关推荐
- 为什么脚本执行一行就不动了_在Linux中通过expect工具实现脚本的自动交互
expect是建立在tcl基础上的一个自动化交互套件, 在一些需要交互输入指令的场景下, 可通过脚本设置自动进行交互通信. 1 安装expect工具 expect是建立在tcl基础上的一个自动化交互套 ...
- 通过脚本案例学习shell(五) 通过创建DNS脚本一步一步教你将一个普通脚本规范到一个生产环境脚本...
通过脚本案例学习shell(五) 通过创建DNS脚本一步一步教你将一个普通脚本规范到一个生产环境脚本 版权声明: 本文遵循"署名非商业性使用相同方式共享 2.5 中国大陆"协议 ...
- bat脚本执行exe文件_将批处理(BAT)脚本转换为可执行(EXE)文件
bat脚本执行exe文件 When you get down to it, batch files and executable files work pretty much the same way ...
- Linux 批量创建用户脚本
创建名为test.sh的脚本文件,实现批量创建99个用户,用户名为user1,user2-user99 所有用户密码为 chinaskill20! 验证:cat /etc/passwd 脚本解析: f ...
- mysql脚本执行中文乱码_MySQL从命令行导入SQL脚本时出现中文乱码的解决方法
本文实例讲述了MySQL从命令行导入SQL脚本时出现中文乱码的解决方法.分享给大家供大家参考,具体如下: 在图形界面管理工具 MySql Query Browser中打开脚本(脚本包括建库.建表.添加 ...
- bin文件怎么转换成文本文档_Python脚本4:根据txt文本,批量创建文件夹
背景:深度学习图像分类的时候,有许多的标签类.1000个标签就需要创建1000个文件夹,文件夹里面放入对应的图像.不可能一个一个右击创建文件夹,所以有了今天的脚本.根据txt文本每一行的类别,创建文件 ...
- c++ _mkdir无法创建文件夹_Python脚本4:根据txt文本,批量创建文件夹
背景:深度学习图像分类的时候,有许多的标签类.1000个标签就需要创建1000个文件夹,文件夹里面放入对应的图像.不可能一个一个右击创建文件夹,所以有了今天的脚本.根据txt文本每一行的类别,创建文件 ...
- windows批量创建用户脚本
for /L %%i in (1,1,3) do net user "test"%%i 123 /add 表示执行如下命令: net user test1 123 /add net ...
- MonoBehaviour Lifecycle(生命周期/脚本执行顺序)
脚本执行顺序 前言 搭建一个示例来验证Unity脚本的执行顺序,大概测试以下部分: 物理方面(Physics) 渲染(Scene rendering) 输入事件(InputEvent) 流程图 Uni ...
最新文章
- python数字计算公式_Python中数字以及算数运算符的相关使用
- 第七章 脚本参数的传递
- 全国计算机运用计算机绘图考试,计算机绘图期末考试题库
- PHP删除排序数组中的重复项,每日一道算法:删除排序数组中的重复项
- html改变微信标题栏颜色,带你了解微信在线编辑器的颜色样式修改
- 鸟哥的私房菜-基础篇学习-文件与目录管理-2-1
- android开启前台服务_Android 知识点必知之ANR与OOM
- Mysql触发器与事务
- [UESTC SC T1] 最大疯子树
- 【MATLAB图像融合】[18]双通道PCNN模型实现图像融合
- 计算机一级中替换,08年计算机一级辅导:实战WPS转义符在查找替换中的应用
- 淘宝美工设计师细说何为天猫透明背景
- ZooKeeper实际应用案例-开发实战
- Flink中Table Api和SQL(二)
- 空手套白狼之——兼职中介
- 乐得瑞LDR6282B 支持双C口盲插便携显示器驱动板方案
- 房产经纪龙头居安思危孵化「贝壳」,如何用数字化解找房之痛?
- Unity3D编辑器插件开发
- HTML 与HTML5 常用标签
- 搭建p2p文件服务器,linux 搭建 p2p 服务器