#将本地文件复制到远程服务器中(远程服务器用户@远程服务器IP)
#upload
scp -r local_path user_name@server_ip:tel_path
#将远程服务器中的文件拷贝到本地(远程服务器用户@远程服务器IP)
#download
scp user_name@server_ip:tel_path local_path
#自动添加密码
set timeout 300
expect "$user_name@$server_ip's password:"
set timeout 300
send "$password\r"
set timeout 300
send "exit\r"
expect eof
例如:
#!/bin/bash
BILL_DATE="20110112"
REMOTE_IPS=("192.168.201.1" "192.168.201.2" "192.168.201.3" "192.168.201.4" "192.168.201.5")
REMOTE_USER="root"
REMOTE_PASSWD="rootpasswd"
REMOTE_PATH="/home/test"
CDR_BILL_FILE="/home/${BILL_DATE}.txt"
cd $CDR_BILL_FILE
ARG_CDR=""
auto_smart_ssh () {
expect -c "set timeout 10;
spawn scp -o StrictHostKeyChecking=no $REMOTE_USER@$REMOTE_IP:$REMOTE_PATH/$BILL_DATE*.cdr ./;
expect {
*assword:* {send -- $REMOTE_PASSWD\r;
expect {
*>*
}
}
}
"
return $?
}
for REMOTE_IP in ${REMOTE_IPS
auto_smart_ssh
ARG_CDR=`ls -F1 ${BILL_DATE}.txt`
for CDR_NAME in ${ARG_CDR}
do
dos2unix $CDR_NAME
#sqlldr userid=CDR/CDR@prm control=./hmscdr.ctl data=./$CDR_NAME
done
done