1.建立用户
1)要求读取/mnt/username用户文件和/mnt/password密码文件,并判断文件是否存在,若都存在则判断其行数是否一致.
2)要建立的用户是否存在,若存在则显示存在不再建立,若不存在则建立
满足以上条件建立用户
效果图
代码如下
#!/bin/bash
USERFILE="/mnt/username"
PASSWDFILE="/mnt/password"
USERNUM=`wc -l /mnt/username |cut -d " " -f 1`
PASSWDNUM=`wc -l /mnt/password |cut -d " " -f 1`
if
[ -f $USERFILE ]
then
if
[ -f $PASSWDFILE ]
then
if
[ ${USERNUM} -eq ${PASSWDNUM} ]
then
for N in $(seq 1 $USERNUM )
do
USERNAME=`sed -n ${N}p /mnt/username`
PASSWORD=`sed -n ${N}p /mnt/password`
id $USERNAME >&/dev/null
if
[ $? -ne 0 ]
then
useradd $USERNAME >&/dev/null
echo $PASSWORD | passwd --stdin $USERNAME >&/dev/null
echo "$USERNAME 创建成功"
else
echo "$USERNAME 已经存在"
fi
done
else
echo 用户名与密码个数不匹配
fi
else
echo 密码文件不存在
fi
else
echo 用户文件不存在
fi
2.ssh自动连接
要求直接运行(脚本 用户 密码 IP)连接ssh
效果图
代码如下
ssh
#!/usr/bin/expect
set USER [ lindex $argv 0 ]
set PASSWD [ lindex $argv 1 ]
set IP [ lindex $argv 2 ]
spawn /mnt/ssh
expect {
"please user" { send "$USER\r"; exp_continue }
"yes" { send "yes\r"; exp_continue }
"please IP" { send "$IP\r"; exp_continue }
"password" { send "$PASSWD\r"; exp_continue }
expect eof
}
answer.exp
#!/bin/bash
read -p "please user" -s USER
read -p "please IP" -s IP
ssh ${USER}@${IP}