第一种(使用ftp下载配置文件):
#!/bin/bash datetime=`date +%Y%m%d` BAKTIME=`date +%Y%m%d%H%M%S` user="admin" password="admin" back="dis cu" BAK_DIR=/back/H3C_back for i in $(cat ip_file) do mkdir -p $BAK_DIR/$datetime/$i-$BAKTIME cd $BAK_DIR/$datetime/$i-$BAKTIME ftp -n $i << EOF user $user $password binary hash prompt off mget *.cfg bye EOF done
- 注释
- ####################################
- datetime=`date +%Y%m%d` 输出年月日
- BAKTIME=`date +%Y%m%d%H%M%S` 输出年月日时分秒
- user="admin" 此用户为交换机、路由器用户名
- password="admin" 此密码为交换机、路由器密码
- back="dis cu" 此命令为查看H3C交换机配置
- BAK_DIR=/back/H3C_back此目录是linux服务器备份交换机、路由器的存放目录
- cat ip_file 此命令意思是查看ip_file文件中的内容,逐行查看
- binary 以二进制传送
- hash 当有数据传送时,显示#号
- prompt off mget自动下载,不提示yes
- mget *.cfg 下载所有*.cfg配置文件
- bye 退出
ip_file 文件添加交换机IP(注意:不要加双引号, 文件与脚本在同一目录下存放)
#以下为交换机、路由器IP地址
192.168.1.1
192.168.1.2
192.168.1.3
192.168.1.4
192.168.1.5
192.168.1.7
第二种(显示dis cu 屏幕输出保存到文件中):
#!/bin/bash datetime=`date +%Y%m%d` BAKTIME=`date +%Y%m%d%H%M%S` user="admin" password="admin" back="dis cu" BAK_DIR=/back/H3C_back mkdir $BAK_DIR/MY_H3C_$datetime for i in $(cat ip_file) do { echo $user; sleep 1; echo $password; sleep 1; echo $back; sleep 1; echo " "; sleep 5; }|telnet $i > $BAK_DIR/MY_H3C_$datetime/$i-$BAKTIME.cfg tail -n +18 $BAK_DIR/MY_H3C_$datetime/$i-$BAKTIME.cfg > $BAK_DIR/MY_H3C_$datetime/MY-$i-$BAKTIME.cfg rm -rf $BAK_DIR/MY_H3C_$datetime/$i-$BAKTIME.cfg done
- 注释
- ####################################
- datetime=`date +%Y%m%d` 输出年月日
- BAKTIME=`date +%Y%m%d%H%M%S` 输出年月日时分秒
- user="admin" 此用户为交换机、路由器用户名
- password="admin" 此密码为交换机、路由器密码
- back="dis cu" 此命令为查看H3C交换机配置
- BAK_DIR=/back/H3C_back此目录是linux服务器备份交换机、路由器的存放目录
- cat ip_file 此命令意思是查看ip_file文件中的内容,逐行查看
- tail -n +18 $BAK_DIR/MY_H3C_$datetime/$i-$BAKTIME.cfg > $BAK_DIR/MY_H3C_$datetime/MY-$i-$BAKTIME.cfg表示$i-$BAKTIME.cfg文件去掉前面17行,从18行开始显示, > 输出到MY-$i-$BAKTIME.cfg文件中
ip_file 文件添加交换机IP(注意:不要加双引号, 文件与脚本在同一目录下存放)
#以下为交换机、路由器IP地址
192.168.1.1
192.168.1.2
192.168.1.3
192.168.1.4
192.168.1.5
192.168.1.7