我知道有一個 FTP 命令可以在 Windows 上從命令列運行,它可以從 FTP 網站下載檔案。使用者+密碼在「that」一行cmd中指定。這些選項+密碼通道應該位於該命令列上。
echo open 192.168.1.64 21> ftp.txt
echo anonymous>> ftp.txt
echo [email protected]>> ftp.txt
echo bin >> ftp.txt
echo get test.txt >> ftp.txt
echo bye >> ftp.txt
ftp -s:ftp.txt
答案1
嘗試這個:批次檔 - 無人值守的 FTP 下載
WGET ftp://ftp.mydomain.com/path/file.ext
用於匿名下載
或者:
WGET ftp://user:[email protected]/path/file.ext
當需要身份驗證時。
正如 @XavierStuvw 透過編輯和評論指出的那樣,交換WGET
到小寫wget
可以在 Linux 中工作。
wget ftp://user:[email protected]/path/file.ext
答案2
我找到方法了:
echo open 192.168.0.1 >> ftp &echo user admin w00t >> ftp &echo binary >> ftp &echo get file.zip >> ftp &echo bye >> ftp &ftp -n -v -s:ftp &del ftp
答案3
請注意,您可以使用 /? 詢問 DOS 中指令的語法。轉變。例如:
C:\>ftp /? 與運行 FTP 伺服器服務的電腦傳輸文件 (有時稱為守護程式)。 FTP可以互動使用。 FTP [-v] [-d] [-i] [-n] [-g] [-s:檔名] [-a] [-A] [-x:sendbuffer] [-r:recvbuf fer] [-b:asyncbuffers] [-w:windowsize] [主機] -v 禁止顯示遠端伺服器回應。 -n 禁止初始連線時自動登入。 -i 在多個文件期間關閉互動式提示 轉移。 -d 啟用調試。 -g 停用檔案名稱通配(請參閱 GLOB 指令)。 -s:filename 指定包含FTP指令的文字檔;這 命令將在 FTP 啟動後自動運行。 -a 綁定資料連線時使用任何本機介面。 - 以匿名登入。 -x:send sockbuf 覆蓋預設的 SO_SNDBUF 大小 8192。 -r:recv sockbuf 覆蓋預設的 SO_RCVBUF 大小 8192。 -b:async count 覆蓋預設的非同步計數 3 -w:windowsize 覆蓋預設傳輸緩衝區大小 65535。 host 指定遠端主機的主機名稱或IP位址 要連接的主機。 筆記: - mget 和 mput 指令採用 y/n/q 表示是/否/退出。 - 使用 Control-C 中止指令。
在您的情況下,您需要使用 -s 開關為其提供腳本,包括登入回應。
例如:
建立一個包含以下內容的腳本檔案 (c:\scriptfile.txt):
open servername_or_ip username password get /fullpath/thefile.txt c:\fullpath\thefile.txt quit
使用 -s 開關執行 ftp 並指定腳本檔名
C:\>ftp -s:c:\scriptfile.txt
答案4
嘗試一下curl
,它功能強大且開箱即用(win10)。
curl --user ftpusername:ftpuserpass -o outputdirname\test.txt ftp://host/test.txt