1、编写脚本实现登陆远程主机。
用expect的方式:
#!/usr/bin/expect
spawn ssh 192.168.88.8
expect {
"yes/no" {send "yes\n" }
"password:" {send "555666\n"}
}
interact用shell方式(标准输入):
#!/bin/bash
ip=192.168.88.8
user=root
password=555666
expect<<EOF
spawn ssh $user@$ip
expect {
"yes/no" {send "yes\n" }
"password:" {send "555666\n"}
}
expect eof
EOF2、生成10个随机数保存于数组中,并找出其最大值和最小值
#!/bin/bash
arr=($RANDOM $RANDOM $RANDOM $RANDOM $RANDOM $RANDOM $RANDOM $RANDOM $RANDOM $RANDOM )
declare -i min=max=${arr[0]}
for ((i=1;i<10;i++));do
[ ${arr[$i]} -gt $max ] && max=${arr[$i]} && continue
[ ${arr[$i]} -lt $min ] && min=${arr[$i]}
done
echo '所有数字为:'${arr[*]}
echo '最大值为:'$max
echo '最小值为:'$min3、输入若干个数值存入数组中,采用冒泡算法进行升序或降序排序
#!/bin/bash
arr=( 45 34 16 76 52 )
echo '初始数组'${arr[*]}
for ((i=1;i<${#arr[*]};i++));do
for ((j=0;j<${#arr[*]}-$i;j++));do
if [ ${arr[j]} -gt ${arr[j+1]} ];then
tmp=${arr[j]}
arr[$j]=${arr[j+1]}
arr[$j+1]=$tmp
fi
done
done
echo '冒泡排序结束'${arr[*]}4、编写脚本,使用for和while分别实现192.168.0.0/24网段内,地址是否能够ping通,若ping通则输出"success!",若ping不通则输出"fail!"
ip=192.168.88.
#for i in {1..254}
#do
# { ping -c1 -w1 $ip$i &>/dev/null; [ $? -eq 0 ] && echo 'success!' || echo 'fail'; } &
#done
#wait
i=1
while (( i<255 )) ;do
{ ping -c1 -w1 $ip$i &>/dev/null; [ $? -eq 0 ] && echo 'success!' || echo 'fail'; } &
let i++;
done
wait5、每周的工作日1:30,将/etc备份至/backup目录中,保存的文件名称格式 为“etcbak-yyyy-mm-dd-HH.tar.xz”,其中日期是前一天的时间
#!/bin/bash [ -d /backup ] || mkdir /backup tar Jcf /backup/etcback-`date +%F-%_H`.tar.xz /etc &> /dev/null [ $? -eq 0 ] && echo '备份成功' || echo '备份失败'



京公网安备 11010502036488号