shell实例第13讲:从FTP服务器下载文件
生活随笔
收集整理的這篇文章主要介紹了
shell实例第13讲:从FTP服务器下载文件
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
#!/bin/bash
#作者:魏波
#時間:2017.02.04if [ $# -ne 1 ]; thenecho "Usage: $0 filename"
fi
dir=$(dirname $1)
file=$(basename $1)
echo "$dir"
echo "$file"
ftp -n -v << EOF
open 192.168.1.10 # ftp服務器
user admin password
binary
cd ”$dir“
get "$file"
EOF
說明:
1、if [ $# -ne 1 ]
$#:添加到Shell的參數個數
-ne:不等于
2、dir=$(dirname $1)、file=$(basename $1)
$1:腳本的第一個參數
dirname:取目錄
basename :去除目錄后剩下的名字
?3、ftp -n -v
-n :不要自動登錄
-i:且關閉交互模式
-v 把交互式的信息提示顯示出來
4、binary??
?設置ftp傳輸模式為二進制,避免MD5值不同或.tar.gz壓縮包格式錯誤
5、ftp get
get一次只下載一個文件;mget一次可以下載多個文件,而且支持通配符,需要注意的是在mget的時侯,需要對每一個文件都選擇y/n,如果想不交互的下載全部的文件,可以先用prompt命令關掉交互方式(關閉:prompt off;打開:prompt on)
6、補充:獲取當前執行腳本路徑
#!/bin/bashCURRENT_DIR="$(cd "$(dirname "$0")"; pwd)" echo $CURRENT_DIR?
總結
以上是生活随笔為你收集整理的shell实例第13讲:从FTP服务器下载文件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: shell实例第0讲:shell脚本完整
- 下一篇: shell实例第14讲:字符串截取的8种