脚本——倒计时,ping,建立用户,做业:ssh并建立用户(未能实现功能)

                                                                                        脚本一ios

要求:ping同一网段下1到10号机,若ping通,输出up,不然输出downbash

#!/bin/bash
for((i=0;i<=10;i++))
do
ping -c1 -w1 172.25.254.$i &> /dev/null && echo "$i is up" || echo "$i is down"
donessh


                                                                                        脚本二ide

要求:一分十秒的倒计时spa

#!/bin/bash
MIN=1
for ((SEC=10;SEC>=0;SEC--))
do
echo -ne "After ${MIN}:${SEC}s is end"
sleep 1
echo -ne "\r     \r"

    while [ "$SEC" -eq "0" -a "$MIN" -gt "0" ]
    do
    echo -ne "After ${MIN}:${SEC}s is end"
    echo -ne "\r    \r"
    ((MIN--))
    SEC=60
    done
doneget


                                                                                        脚本三input

要求:经过从指定文件获得用户密码并建立用户,若用户存在,提示报错,若用户数和密码数不一样,提示报错it

#!/bin/bash
if
[ -n "$1" -a -n "$2" ]
then
    if
    [ -e "$1" -a -e "$2" ]
    then
    MAXUSER=`wc -l $1 | cut -d " " -f 1`
    MAXPASS=`wc -l $2 | cut -d " " -f 1`
        [ "$MAXUSER" -eq "$MAXPASS" ]&&(
        for NUM in $( seq 1 $MAXUSER )
        do    
        USERNAME=`sed -n ${NUM}p $1`
        PASSWORD=`sed -n ${NUM}p $2`
        CKUSER=`getent passwd $USERNAME`
        [ -z "$CKUSER" ]&&(
        useradd $USERNAME
        echo $PASSWORD |passwd --stdin $USERNAME
        )||echo "$USERNAME exist !!"
        done
        )||(
        echo $1 and $2 have different lines
        )
    elif
    [ ! -e "$1" ]
    then
    echo "ERROR:$1 is not exist"
    else
    echo "ERROR:$2 is not exist"
    fi
else
echo "ERROR: Please input userfile and password file after command!!"
fi
io

                                                                                            脚本四class

要求:本地建立用户文件和密码文件,经过ping同一网段的多台机器,若ping通,ssh链接机器,并在链接的机器上建立从用户文件和密码文件中读取的相关用户

#!/bin/bash
if
[ -n "$1" -a -n "$2" ]
then
    if
    [ -e "$1" -a -e "$2" ]
    then
    MAXUSER=`wc -l $1 | cut -d " " -f 1`
    MAXPASS=`wc -l $2 | cut -d " " -f 1`
        [ "$MAXUSER" -eq "MAXPASS" ]&&(
        for NUM in $( seq 1 $MAXUSER )
        do
        USERNAME=`sed -n ${NUM}p $1`
        PASSWORD=`sed -n ${NUM}p $2`
        for (( i=2;i<=4;i++ ))
        do
            ping -c1 -w1 172.25.254.$i  &> /dev/null
            if [[ $? -eq 0 ]]
            then
            /home/kiosk/Desktop/ssh.exp 172.25.254.$i redhat
             CKUSER=`getent passwd $USERNAME`
            [ -z "$CKUSER" ]&&(
            useradd $USERNAME
            echo $PASSWORD | passwd --stdin $USERNAME
            )||echo "$USERNAME exist!"
            exit
            else
            echo "ERROR: Please input userfile and password file after command"
            fi
            done
        )||(
        echo $1 and $2 have different lines
        )

else
echo 172.25.254.$i is down
fi
done


ssh.exp:

#!/usr/bin/expectset IP [lindex $argv 0]set PASS [lindex $argv 1]set COMM [lindex $argv 2]spawn ssh root@$IP $COMMexpect {    "yes/no"    {send "yes\r";exp_continue}    "password:"    {send "$PASS\r"}    }interact

相关文章
相关标签/搜索