通过读取用户和密码文件自动创建用户脚本

用户文件/mnt/username     密码文件/mnt/passwdfile

Username文件中每一行代表一个用户,passwdfile中每行对应username中一个密码

通过读取取两个文件,自动创建用户

#!/bin/bash

if [ -z /mnt/username ]                            //判断username是否存在

then  echo ERROR:/mnt/username is not exits

elif [ -z /mnt/passwdfile ]                      //判断passwdfile是否存在

then  echo ERROR:/mnt/passwdfile is not exits

else          usernameline=`wc -l /mnt/username | cut -d " " -f 1`  //统计行数

passwdfileline=`wc -l /mnt/passwdfile | cut -d " " -f 1`

if [ "$usernameline" = "0" -o "$passwdfileline" = "0" ]; //如果有任意一个文件行数为0则无法正常创建用户

then  echo username or passwdfile  is  empty

elif [ "$usernameline" != "$passwdfileline" ];              //如果都不为空,则判断两个文件行数是否相等,如果不相等也不能创建用户

then echo usernameline and passwdfileline is not equal

else [ "$usernameline" = "$passwdfileline" ];    //如果行数相等,则依次提取每一行

for NUM in $( seq 1 $usernameline )

do

USERNAME=`sed -n ${NUM}p /mnt/username`       //username的每一行作为USERNAMN

PASSWD=`sed -n ${NUM}p /mnt/passwdfile`       //passwdfile的每一行作为对应密码

USERADD=`useradd $USERNAME &> /dev/null && echo "success"||echo "failed"`                                 //创建用户成功则输出success 否则failed

if [ "$USERADD" = "success" ];    //如果输出success,说明创建用户成功,则为其添加密码

then echo $PASSWD | passwd --stdin $USERNAME

echo $USERNAME create successfully

elif [ "$USERADD" = "failed" ];

then  echo $USERNAME already exits       //否则提示该用户已经存在。

fi

done

fi

fi

时间: 2024-10-11 04:48:51

通过读取用户和密码文件自动创建用户脚本的相关文章

从Exchange 通往Office 365系列(十八)通过csv文件批量创建用户

之前已经讲过在Office 365中创建用户一种方法是通过活动目录同步工具将本地AD同步到Office 365中,其实这也就是同步到Office 365后台的Windows Azure中,这是在企业已经有本地的AD架构之后的做法,如果小型机构可能内部并没有AD的架构,那么这时候可以通过csv格式的文件在Office 365中直接创建用户,之前已经讲过如何通过活动目录同步工具将本地AD同步到Office 365中,想看的可以去看一下http://mxyit.blog.51cto.com/43088

12.2 中的Data Guard Standby 密码文件自动同步 (Doc ID 2307365.1)

Data Guard Standby Automatic Password file Synchronization in 12.2 (Doc ID 2307365.1) APPLIES TO: Oracle Database - Enterprise Edition - Version 12.2.0.1 and laterOracle Database Cloud Schema Service - Version N/A and laterOracle Database Exadata Clo

bat文件自动创建cocos2dx 工程

1. 写在开头 本人写了一个自动创建cocos2dx工程的脚本..bat文件,会修正Application.mk 文件,并且在桌面创建打开项目目录的快捷方式. 使用条件:1. 在本地计算机中已安装python 2.7.6 版本,并将python安装目录加入到 PATH环境变量中. 2. 根据自己的cocos2dx与ndk安装目录,更改脚本最初COCOS2DX_DIR.NDK_DIR变量. 3.本脚本只创建c++语言的cocos2dx工程,创建成功后仍需手动配置c++ build目录. 个人写的脚

sys用户,密码文件 dba权限的关系

[email protected] ~]$ sqlplus "/as sysdba" SQL*Plus: Release 11.1.0.7.0 - Production on Tue Apr 29 15:40:38 2014 Copyright (c) 1982, 2008, Oracle. All rights reserved. Connected to: Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - 64b

经典实用的自动创建Bash脚本文件头的脚本

今天给大家展示一下,我自己写的一个自动创建Bash脚本文件头的脚本(名为create),希望能对初学脚本者带来一定的思维提示.毕竟对于一个经常写脚本的运维人员来说,每次写脚本的时候都需要重复的去写一遍文件头,也是一件很累赘的事情,既然我们学了脚本,为什么不让它来为我们减轻一下负担了.所以一个自动创建Bash脚本文件头的想法在我脑海里面产生了. 本脚本所需要实现的功能: 1,能够自动创建一个标准的Bash脚本文件头,带有详细注释信息 2,能够给新建完成的Bash脚本文件自动添加执行权限 [[ema

第十一课 xshell实现linux与windows互文件、用户与密码的配置文件、用户和用户组的管理

一.Xshell 上实现Linux 与windows互传1.先用命令 yum install -y lrzsz ;2.向windosw 系统传文件,sz filename ,向Linux上传文件,直接输入rz命令,然在WINDOWS选择文件即可 二.用户与密码的配置文件cat /etc/passwd/ 用户的配制文件,你创建一个用户就会在里面增加一行.2.文件结构.每个用户一行,由:分成7段,第一行就是超级用户:root第三段数字是1000的就是开始我们自己创建的用户第一段用户名,第二段是密码(

不知道密码情况下创建用户 (转)

很多数据库迁移要求使用exp,或者需要使用exp,比如我这次为用户做的数据库升级,从oracle9i升级到oracle11g. 我们需要在新服务器上创建数据库,创建表空间,创建用户,赋予用户权限,然后再执行imp命令导入数据.创建用户之前我们可以通过select username from dab_users来获取需要创建的用户名,可是如何获得该用户的密码呢?在创建语句create user <username> identified by <password>中,password

一个简单的自动创建Shell脚本的脚本

因为自己平时会写一些小实验脚本,每次都要写Author,Description等很麻烦,便写了这么一个能够自行创建脚本的小脚本,代码如下,纯个人原创,比较粗糙,大神勿喷 #!/bin/bash # VER=0 AUT=0 TIM=0 DES=1 if [ $# -lt 1 ];then         echo "`basename $0` : -a|--author|-t|-d|-v|-f|--file /PATH/TO/FILE|-h"         exit 3 fi whil

Exchange用户更改密码后,手机用户使用旧密码仍然可以接收邮件

最近有两个同事说他们的用户密码更改密码后,手机竟然不提示新密码仍然能够接收邮件,刚开始觉得匪夷所思,并没有在意,后面搜索下互联网,发现网上有同样的人遇到过该问题,查了下KB,还真找到一个,具体说是IIS中的一个机制,会缓存用户通过基本身份验证的凭据,时间为15分钟(用outlook MAPI或者windows 集成身份验证的不受该影响). http://support.microsoft.com/kb/267568