bat腳本登陸ftp服務器


用bat腳本登錄ftp服務器,下載指定文件。

第一次腳本,有問題,你發現了么?

由於每個">>"重定向符號之前都習慣用空格(python style),導致寫道ftp.txt中的每一行最后都有一個空格,所以ftp登錄時報用戶名密碼不正確
···
@echo off 請輸入一個參數:本次迭代編號,如k0225(k表示2019年,l表示2020年,以此類推)
echo clouder > ftp.txt
echo engine >> ftp.txt
echo cd PowerDude/thinclient/%1 >> ftp.txt
echo binary >> ftp.txt
echo mget OneCloud_PowerDude_Setup_x86_V* >> ftp.txt
echo y >> ftp.txt
echo quit >> ftp.txt
ftp -d -s:ftp.txt 192.168.1.170
del ftp.txt
···
遇到問題 老是登錄不上
···
C:\Users\clouder\Desktop\yanna>ftp -s:ftp.txt 192.168.1.170
連接到 192.168.1.170。
220 (vsFTPd 3.0.2)
200 Always in UTF8 mode.
用戶(192.168.1.170:(none)):
331 Please specify the password.

530 Login incorrect.
登錄失敗。
ftp> cd PowerDude/thinclient/k0225
530 Please login with USER and PASS.
ftp> binary
530 Please login with USER and PASS.
ftp> mget OneCloud_PowerDude_Setup_x86_V*
Please login with USER and PASS.
Please login with USER and PASS.
Please login with USER and PASS.
530 Please login with USER and PASS.
找不到遠程文件列表。
ftp> y
無效命令。
ftp> quit
221 Goodbye.
···
最后修改為,注意">>"之前不要有空格

@echo 請輸入一個參數:本次迭代編號,如k0225(k表示2019年,l表示2020年,以此類推)
echo clouder>> ftp.txt
echo engine>> ftp.txt
echo cd PowerDude/thinclient/%1>> ftp.txt
echo binary>> ftp.txt
echo mget OneCloud_PowerDude_Setup_x86_V*>> ftp.txt
echo y>> ftp.txt
echo quit>> ftp.txt
ftp -d -s:ftp.txt 192.168.1.170
del ftp.txt

解析:

  1. @ 表示不運行后面的內容,echo是回顯,相當於print,“@echo”一般用來寫操作說明,help等信息
  2. echo 表示回顯,相當於print語句
  3. ,>> 重定向符號,把左邊的內容重定向到右邊的位置,>表示重寫,>>表示追加

  4. %1 表示命令行第一個參數,%0 即腳本本身名字
  5. ftp -d表示調試模式,可以看得更細的內容,方便排錯,-s 指定包含 FTP 命令的文本文件,命令在 FTP 啟動后自動運行。
  6. del ftp.txt 刪除文件


免責聲明!

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



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