倒计时脚本:
1 #!/bin/bash
2 read -p "please input the num of hour: " hour
3 read -p "please input the num of minutes:" minutes
4 read -p "please input the num of sec: " s
5 sec=$hour*60*60+$minutes*60+$s
6 for ((sec=$sec;sec>0;sec--))
7 do
8 echo -ne "Come on,$(($sec/(3600))) hours $((($sec/60)-60)) minute $((($sec%3600)%60)) s later , New Year is coming... "
9 echo -ne "\r \r"
10 sleep 1
11 done
作业脚本(不完全版本):
文件1: /mnt/11/scan.sh
内容:
1 #!/bin/bash
2 for num in {1..30}
3 do
4 ping -c1 -w1 172.25.254.$num &> /dev/null && (
5 /mnt/11/scp.exp 172.25.254.$num
6 /mnt/11/ssh.exp 172.25.254.$num
7 )
8 done
文件2: /mnt/11/ssh.exp
内容:
1 #!/usr/bin/expect
2 set timeout 2
3 set ip [lindex $argv 0]
4 spawn ssh root@$ip sh /mnt/11/creat/creatuser.sh
5 expect {
6 "yes/no" {send "yes\r";exp_continue}
7 "password" {send "redhat\r"}
8 }
9 expect eof
文件3: /mnt/11/scp.exp
内容:
1 #!/usr/bin/expect
2 set timeout 2
3 set ip [lindex $argv 0]
4 spawn scp /mnt/11/creat/creat_user.sh root@$ip:/mnt
5 expect {
6 "yes/no" {send "yes\r";exp_continue}
7 "password" {send "redhat\r"}
8 }
9 expect eof
10
11 spawn scp /mnt/11/creat/userfile root@$ip:/mnt
12 expect {
13 "yes/no" {send "yes\r";exp_continue}
14 "password" {send "redhat\r"}
15 }
16 expect eof
17
18 spawn scp /mnt/11/creat/passwdfile root@$ip:/mnt
19 expect {
20 "yes/no" {send "yes\r";exp_continue}
21 "password" {send "redhat\r"}
22 }
23 expect eof
文件4: /mnt/11/creat/creatuser.sh
内容:
1 #!/bin/bash
2 if [ ! -f /mnt/11/creat/userfile ];then
3 echo "userfile is not exist"
4 exit 1
5 fi
6 if [ ! -f /mnt/11/creat/passwdfile ];then
7 echo "passwdfile is not exist"
8 exit 1
9 fi
10
11 line1=$(wc -l /mnt/11/creat/userfile | cut -d " " -f 1)
12 line2=$(wc -l /mnt/11/creat/passwdfile | cut -d " " -f 1)
13
14 if [ ! "$line1" -eq "$line2" ];then
15 echo "the user and passwd not match"
16 exit 1
17 fi
18
19 for num in $( seq 1 $line1 );do
20 name=`sed -n ${num}p /mnt/11/creat/userfile`
21 pass=`sed -n ${num}p /mnt/11/creat/passwdfile`
22 useradd $name &> /dev/null
23 if [ "$?" -eq 0 ];then
24 echo $pass | passwd --stdin $name &> /dev/null
25 echo "$name is success"
26 else
27 echo "$name is exits"
28 fi
29 done
文件5: /mnt/11/creat/userfile
内容:
lzt1
lzt2
lzt3
文件6: /mnt/11/creat/passwdfile
内容:
123
123
123
运行:
chmod +x /mnt/11/ssh.exp
chmod +x /mnt/11/scp.exp
sh /mnt/11/scan.sh