$FHHOME/fhscripts/fhssh.sh
$ fhssh.sh -H 192.168.0.10 auth.pro $ fhssh.sh -H 192.168.0.11 auth.stg
~]$ fhssh.sh -l How to use fhssh.sh -H x.x.x.x auth.pro fhssh.sh -H x.x.x.x auth.stg fhssh.sh -H x.x.x.x auth.dev fhssh.sh -H x.x.x.x auth.srx_pro fhssh.sh -H x.x.x.x auth.srx_dev ~]$
$FHHOME/fhscripts/fhssh.sh
#!/bin/bash #===================================================================== # fhssh.sh # # How to use # fhssh.sh -l <- list command # fhssh.sh -h # fhssh.sh -H xx.xx.xx.xx auth.pro # fhssh.sh -H xx.xx.xx.xx auth.stg #===================================================================== HELP () { echo "How to use" cat $0 |grep auth |grep ")"|grep -v "fhssh.sh" |awk -F")" {'print " fhssh.sh -H x.x.x.x" $1'} exit 0 } ERROR () { echo "" echo 'ERROR: Option is mistake' echo "" } case ${1} in -h|-l) HELP ;; esac if [ -z ${3} ]; then ERROR HELP exit 1 fi case ${1} in -H) : HOST=$2 AUTH=$3 ;; *) : ERROR HELP exit 1 ;; esac #=================================================================== # #=================================================================== SSH_PASS () { expect -c " set timeout 5 spawn ssh ${USER}@${HOST} expect \"assword:\" send \"$PASSWD\r\" interact " } # ------------------------------------------ SSH_KEY_NOPASS () { expect -c " set timeout 5 spawn ssh -i ${KEY} ${USER}@${HOST} expect \"$\" interact " } # ------------------------------------------ SSH_KEY_PASS () { expect -c " set timeout 5 spawn ssh -i ${KEY} ${USER}@${HOST} expect \"assword:\" send \"$PASSWD\r\" expect \"$\" interact " } # ------------------------------------------ SRX () { expect -c " set timeout 5 spawn ssh ${USER}@${HOST} expect \"assword:\" send \"$PASSWD\r\" expect \"%\" send \"cli\r\" expect \">\" send \"show configuration | display set | no-more\" interact " } case ${AUTH} in auth.pro) : USER=user01 PASSWD=testpass SSH_PASS ;; auth.stg) : USER=user01 PASSWD=testpass KEY=/home/xxx/.ssh/xxxx.pub SSH_KEY_NOPASS ;; auth.dev) : USER=user01 PASSWD=testpass SSH_KEY_PASS ;; auth.srx_pro) : USER=user01 PASSWD=testpass SRX ;; auth.srx_dev) : USER=user01 PASSWD=testpass SRX ;; esac
fhscripts