Linux curl操作FTP常用命令
注:本文是參考網(wǎng)上的資料然后整理了一些自己經(jīng)常使用的命令以備忘!
curl是一個利用 URL 語法,在命令行終端下使用的網(wǎng)絡(luò)請求工具,支持 HTTP、HTTPS、FTP 等協(xié)議。cURL 也有用于程序開發(fā)使用的版本 libcurl。
HTTP/HTTPS 網(wǎng)絡(luò)請求
1.普通 GET 請求
curl https://www.baidu.com/ # GET請求, 輸出 響應(yīng)內(nèi)容
curl -I https://www.baidu.com/ # GET請求, 只輸出 響應(yīng)頭
curl -i https://www.baidu.com/ # GET請求, 輸出 響應(yīng)頭、響應(yīng)內(nèi)容
curl -v https://www.baidu.com/ # GET請求, 輸出 通訊過程、頭部信息、響應(yīng)內(nèi)容等
2.POST 請求提交數(shù)據(jù)
# POST 提交 JSON 數(shù)據(jù)(\表示命令語句還未結(jié)束, 換行繼續(xù))
curl -H "Content-Type: application/json" \
-d '{"username":"hello", "password":"123456"}' \
http://localhost/login
# POST 提交 表單數(shù)據(jù)
curl -F "username=hello" \
-F "password=123456" \
-F "head_image=@filepath.jpg" \
http://localhost/register
3.下載文件
# 指定保存的文件名稱下載文件
curl https://www.baidu.com -o baidu.txt
# 使用 URL 指定的資源文件名保存下載文件(URL 必須指向具體的文件名)
curl https://www.baidu.com/index.html -O
# 指定 Usaer-Agent 和 Referer 請求頭的值, 下載文件
curl -A "Mozilla/5.0 Chrome/70.0.3538.110 Safari/537.36" \
-e "https://www.baidu.com/" \
https://www.baidu.com/index.html -O
FTP 上傳/下載文件
1.查看文件
# 查看 FTP 指定目錄(目錄必須以"/"結(jié)尾)下的文件列表
curl ftp://192.168.0.100/aaDir/ -u "user:passwd"
# 查看 FTP 指定文件的內(nèi)容(直接輸出到終端)
curl ftp://192.168.0.100/aaDir/aa.txt -u "user:passwd"
# 用戶名 和 密碼 的另一種寫法(查看 FTP 服務(wù)器指定目錄)
curl ftp://user:passwd@192.168.0.200/aaDir/
2.上傳文件
# 上傳 aa.txt 文件到 FTP 指定目錄下(目錄必須以"/"結(jié)尾), 并以 原文件名 命名保存
curl ftp://192.168.0.100/aaDir/ -u "user:passwd" -T "aa.txt"
# 上傳 aa.txt 文件到 FTP 指定目錄下, 并以 bb.txt 命名保存
curl ftp://192.168.0.100/aaDir/bb.txt -u "user:passwd" -T "aa.txt"
# 同時上傳多個文件
curl ftp://192.168.0.100/aaDir/ -u "user:passwd" -T "{aa.txt,bb.txt}"
3.下載文件
# 下載 FTP 指定文件 /aaDir/aa.txt, 以原文件名命名保存到當前目錄
curl ftp://192.168.0.100/aaDir/aa.txt -u "user:passwd" -O (字母大寫O)
# 下載 FTP 指定文件 /aaDir/aa.txt, 以 bb.txt 命名保存
curl ftp://192.168.0.100/aaDir/aa.txt -u "user:passwd" -o bb.txt (字母小寫o)
4.執(zhí)行 FTP 協(xié)議命令
curl 執(zhí)行 FTP 命令格式:
單條命令: curl [-options] <ftpUrl> -X "FTP命令"
多條命令: curl [-options] <ftpUrl> -Q "FTP命令" -Q "FTP命令"
# 創(chuàng)建文件夾, 在 /aaDir/ 目錄(目錄必須以"/"結(jié)尾)下創(chuàng)建 bbDir 文件夾
#
curl -u "user:passwd" ftp://192.168.0.100/aaDir/ -X "MKD bbDir"
#
# 刪除文件夾, 刪除 /aaDir/ 目錄下的 bbDir 文件夾(文件夾必須為空)
#
curl -u "user:passwd" ftp://192.168.0.100/aaDir/ -X "RMD bbDir"
#
# 刪除文件, 刪除 /aaDir/ 目錄下的 aa.txt 文件
#
curl -u "user:passwd" ftp://192.168.0.100/aaDir/ -X "DELE aa.txt"
#
# 重命名, 重命名需要連續(xù)執(zhí)行兩條命令, 使用兩個 -Q 參數(shù)連續(xù)執(zhí)行兩條命令(必須先 RNFR, 后 RNTO)
#
curl -u "user:passwd" ftp://192.168.0.100/ -Q "RNFR OldPath" -Q "RNTO NewPath"
*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。