国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 維修 > 疑難雜癥 > 正文

使用expect和cvs來給華為設備做配置比較

2020-02-06 09:34:30
字體:
來源:轉載
供稿:網友
以前一只用rancid來對cisco的設備做配置比較,但顯然rancid對華為不太友好,一直就不支持華為設備(包括h3)。因此呢,由于本人還有點小聰明,知道rancid是考expect和cvs來實現的,于是乎自己寫了些比較笨的腳本來給華為的設備做配置比較。
1)去華為設備抓配置
#!/usr/local/bin/expect
spawn telnet x.x.x.x
expect "sername:"
send "xxxx/n"
expect "assword:"
send "xxxx/n"
expect ">"
send "su/n"
expect "assword:"
send "xxxx/n"
expect ">"
send "dis cu/n"
log_file /tmp/rancid.tmp/Distribution/configs/d-cp-ne20-1
while (1) {
expect  {
 "More ----" {send " "}
 "1>" {
  send "quit/n" 
  exit
  }
}
}

2)把配置中的換行符和敏感信息去掉
cd /tmp/rancid.tmp
rm /tmp/rancid.tmp/Distribution/configs/d-cp-ne20-1
/home/rancid/huawei/d-cp-ne20-1.sh
cd /tmp/rancid.tmp/Distribution/configs
tr -d '/r' < /tmp/rancid.tmp/Distribution/configs/d-cp-ne20-1 > /tmp/rancid.tmp/d-cp-ne20-1.tmp
mv /tmp/rancid.tmp/d-cp-ne20-1.tmp /tmp/rancid.tmp/Distribution/configs/d-cp-ne20-1
sed -e 's// / ----/ More./{57/}//g' /tmp/rancid.tmp/Distribution/configs/d-cp-ne20-1 > /tmp/rancid.tmp/d-cp-ne20-1.tmp
mv /tmp/rancid.tmp/d-cp-ne20-1.tmp /tmp/rancid.tmp/Distribution/configs/d-cp-ne20-1 
sed -e 's/d/ cipher./{25/}/d/ cipher/ ******/g' /tmp/rancid.tmp/Distribution/configs/d-cp-ne20-1 > /tmp/rancid.tmp/d-cp-ne20-1.tmp
mv /tmp/rancid.tmp/d-cp-ne20-1.tmp /tmp/rancid.tmp/Distribution/configs/d-cp-ne20-1 
sed -e 's// simple.*// simple/ ******/g' /tmp/rancid.tmp/Distribution/configs/d-cp-ne20-1 > /tmp/rancid.tmp/d-cp-ne20-1.tmp
mv /tmp/rancid.tmp/d-cp-ne20-1.tmp /tmp/rancid.tmp/Distribution/configs/d-cp-ne20-1
sed -e 's/local-user/ .*/ //local-user ***** / /g' /tmp/rancid.tmp/Distribution/configs/d-cp-ne20-1 > /tmp/rancid.tmp/d-cp-ne20-1.tmp
mv /tmp/rancid.tmp/d-cp-ne20-1.tmp /tmp/rancid.tmp/Distribution/configs/d-cp-ne20-1

3)把配置加入rancid的cvs中
cvs add d-cp-ne20-1
cvs commit -m updates

4)把以下內容做成一個文件加入cron就ok了
cd /tmp/rancid.tmp
rm /tmp/rancid.tmp/Distribution/configs/d-cp-ne20-1
/home/rancid/huawei/d-cp-ne20-1.sh
cd /tmp/rancid.tmp/Distribution/configs
tr -d '/r' < /tmp/rancid.tmp/Distribution/configs/d-cp-ne20-1 > /tmp/rancid.tmp/d-cp-ne20-1.tmp
mv /tmp/rancid.tmp/d-cp-ne20-1.tmp /tmp/rancid.tmp/Distribution/configs/d-cp-ne20-1
sed -e 's// / ----/ More./{57/}//g' /tmp/rancid.tmp/Distribution/configs/d-cp-ne20-1 > /tmp/rancid.tmp/d-cp-ne20-1.tmp
mv /tmp/rancid.tmp/d-cp-ne20-1.tmp /tmp/rancid.tmp/Distribution/configs/d-cp-ne20-1 
sed -e 's/d/ cipher./{25/}/d/ cipher/ ******/g' /tmp/rancid.tmp/Distribution/configs/d-cp-ne20-1 > /tmp/rancid.tmp/d-cp-ne20-1.tmp
mv /tmp/rancid.tmp/d-cp-ne20-1.tmp /tmp/rancid.tmp/Distribution/configs/d-cp-ne20-1 
sed -e 's// simple.*// simple/ ******/g' /tmp/rancid.tmp/Distribution/configs/d-cp-ne20-1 > /tmp/rancid.tmp/d-cp-ne20-1.tmp
mv /tmp/rancid.tmp/d-cp-ne20-1.tmp /tmp/rancid.tmp/Distribution/configs/d-cp-ne20-1
sed -e 's/local-user/ .*/ //local-user ***** / /g' /tmp/rancid.tmp/Distribution/configs/d-cp-ne20-1 > /tmp/rancid.tmp/d-cp-ne20-1.tmp
mv /tmp/rancid.tmp/d-cp-ne20-1.tmp /tmp/rancid.tmp/Distribution/configs/d-cp-ne20-1
cvs commit  -m updates > /dev/null

btw:關于cvs在web上的顯示,我使用的上viewvc,感覺比cvsweb要好哦。還有,不要說俺的腳本寫的很爛,俺是學網絡的,腳本這東西,現學現用,湊合了。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 成武县| 荥阳市| 寿光市| 类乌齐县| 兴宁市| 呼伦贝尔市| 赞皇县| 乌鲁木齐县| 九江市| 吉安县| 长阳| 西畴县| 黑水县| 东乡县| 仁布县| 大足县| 灯塔市| 禹城市| 沾益县| 尼木县| 玉龙| 康乐县| 黑水县| 鸡西市| 岗巴县| 汝州市| 扶余县| 宣武区| 澄江县| 海门市| 罗平县| 小金县| 威信县| 永城市| 宣威市| 兖州市| 乐陵市| 竹北市| 平阴县| 凌云县| 常熟市|