技術小秘訣: 如何用 bash 寫出密碼產生器?
很多MIS人員常常為了設定公司員工的密碼,而想不出一個簡單的方法;Ben老師在課堂上給學員的作業便是,請各位學員使用bash寫出一個密碼產生器。
#!/bin/bash
declare -i count=0
chars='1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOQPRSTUVWXYZ._!@#$%^&*()'
declare -i chars_length=`expr length $chars`
while [ $count -le 7 ]
do
declare -i pos=`expr $RANDOM % $chars_length`+1
# 必須使用雙引號,否則當echo的字元為*時,會列出目前目錄下的所有檔案
echo -n "`expr substr $chars $pos 1`"
count=$count+1
done
echo
富捷 IT 培訓 (原奇科電腦) www.geego.com.tw 是培訓與職業轉型的先驅,專門研究當今最需要的技能。也是培訓、職涯成長和職業轉換的主要資源;長年來,我們已培養了一群追求自己鍾愛職業生涯的專業人士。 意者請洽+886-2-27116373。 http://www.geego.com.tw; e-mail:service@geego.com.tw Linux LPIC-1 / Linux LPIC-2 / CCENT / CCNA /CCNP / Java OCPJP / Android App / Android Advanced / Android Security / Swift / iOS App / Python / Python x Crawler / Python x Database / Oracle Database / HTML5 / CSS3 / JavaScript / MySQL / PHP /
2011年9月27日 星期二
2011年8月31日 星期三
奇科電腦 / 技術小秘訣: 如何利用 bash 的 shell script 自動取得 Cisco 交換器或是路由器的組態設定?
撰寫一個bash的shell script,自動取得Cisco交換器或是路由器的組態設定,如此,我們可以配合UNIX機器上的自動排程機制(CRON),定期備份組態設定。
#!/bin/bash
router=10.10.10.10
password=cisco
enable_mode='enable'
enable_password=cisco
term_length="terminal length"
cmd='show run'
echo open $host
sleep 1
echo $password
sleep 1
echo $enable_mode
sleep 1
echo $enable_password
sleep 1
echo $term_length 0
sleep 1
echo $cmd
sleep 1
echo $term_length 24
sleep 1
echo exit
如果以上的程式名稱為telnet.sh,我們便可以在命令提示字元(prompt)下達指令:
./telnet.sh | telnet
就可以得到IP位址為10.10.10.10的Cisco交換器或是路由器的組態設定了。
#!/bin/bash
router=10.10.10.10
password=cisco
enable_mode='enable'
enable_password=cisco
term_length="terminal length"
cmd='show run'
echo open $host
sleep 1
echo $password
sleep 1
echo $enable_mode
sleep 1
echo $enable_password
sleep 1
echo $term_length 0
sleep 1
echo $cmd
sleep 1
echo $term_length 24
sleep 1
echo exit
如果以上的程式名稱為telnet.sh,我們便可以在命令提示字元(prompt)下達指令:
./telnet.sh | telnet
就可以得到IP位址為10.10.10.10的Cisco交換器或是路由器的組態設定了。
訂閱:
文章 (Atom)