sftp遠程傳輸腳本


該腳本主要是是批量修改文件名,然后傳輸文件到服務器
#!/bin/bash #腳本名:sftp.sh while true do num=`cat test.txt|wc -l` for ((a=1;a<=$num;a++)) do port=$(awk -v i=$a 'NR==i{print $1 }' test.txt) user=$(awk -v i=$a 'NR==i{print $2 }' test.txt) ip=$(awk -v i=$a 'NR==i{print $3 }' test.txt) serverdir=$(awk -v i=$a 'NR==i{print $4 }' test.txt) clientdir=$(awk -v i=$a 'NR==i{print $5 }' test.txt) password=$(awk -v i=$a 'NR==i{print $6 }' test.txt) #sftp -oport=$port $user@$ip lftp -u ${user},${password} sftp://${ip}:${port} <<EOF cd ${serverdir} lcd ${clientdir} mget *.log.ok.tar.gz by EOF done cd /test for i in `ls *.log.ok.tar.gz` do #獲取文件名以第一個匹配到ok的左邊字符串 file=${i%ok*} mv $i ${file}ok.ok.tar.gz done done 要讓程序在關閉終端以后繼續在后台運行,可以執行以下命令 nohup bash sftp.sh >/dev/null 2>&1 & test.txt文件內容如下 22 root 192.168.4.50 /root/yjt /test 123456 22 root 192.168.4.45 /root/yjt /test 123456

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM