我有以下批处理文件,它创建一个FTP脚本来从服务器上传/下载文件。
但是我使用管理员权限运行它,但脚本只上传一个文件并且没有下载任何想法?
@echo off
echo user a6954408 >>ftpcmd.dat
echo renu123 >>ftpcmd.dat
ECHO cd /public_html/ >>ftpcmd.dat
echo bin >>ftpcmd.dat
lcd C:\Users\User\AppData\Local\Temp >>ftpcmd.dat
echo get Auto_Update.exe >>ftpcmd.dat
echo get Log.txt >>ftpcmd.dat
echo put C:\Users\User\AppData\Local\Temp\Log.txt >>ftpcmd.dat
echo put C:\Users\User\AppData\Local\Temp\Dev.txt >>ftpcmd.dat
echo quit >>ftpcmd.dat
ftp -n -s:ftpcmd.dat chatterz.net78.net
goto :run1
:run1
ftp -n -s:ftpcmd.dat chatterz.net78.net
goto run1
更新时间:2015年6月19日,16:05
感谢您的帮助,但我仍然没有得到它..
Connected to chatterz.net78.net.
220---------- Welcome to Pure-FTPd [privsep] ----------
220-You are user number 12 of 500 allowed.
220-Local time is now 06:32. Server port: 21.
220-This is a private system - No anonymous login
220 You will be disconnected after 3 minutes of inactivity.
ftp> user a6954408
331 User a6954408 OK. Password required
230-OK. Current restricted directory is /
230-2 files used (0%) - authorized: 10000 files
230 6040 Kbytes used (0%) - authorized: 1536000 Kb
ftp> cd public_html
250 OK. Current directory is /public_html
ftp> bin
200 TYPE is now 8-bit binary
ftp> lcd C:\Users\User\AppData\Local\Temp
Local directory now C:\Users\User\AppData\Local\Temp.
ftp> get Auto_Update.exe
200 PORT command successful
550 Can't open Auto_Update.exe: No such file or directory
ftp> get Log.txt
200 PORT command successful
150 Connecting to port 53985
226 File successfully transferred
ftp> put Log.txt
200 PORT command successful
150 Connecting to port 53986
226 File successfully transferred
ftp> put Dev.txt
Dev.txt: File not found
ftp> quit
221-Goodbye. You uploaded 0 and downloaded 0 kbytes.
221 Logout.
Press any key to continue . . .
文件仍未上传/下载,我知道该怎么办?
答案 0 :(得分:0)
您的代码通常是正确的。
有两个问题,其中没有一个可能是您遇到问题的原因:
echo renu123 >>ftpcmd.dat
- 您不应将密码留在密码后面,因为它是密码的一部分。lcd C:\Users\User\AppData\Local\Temp >>ftpcmd.dat
- 您在echo
之前缺少lcd
。当我运行您的代码时,它无法下载Auto_Update.exe
,因为服务器上不存在该文件:
ftp> get Auto_Update.exe
200 PORT command successful
550 Can't open Auto_Update.exe: No such file or directory
上传两个文件(如果我在本地计算机上有这些文件)。因此,如果他们没有在您的计算机上上传,那是因为您没有将它们放在那条路径上。
根据您的输出日志,Log.txt
已上传,但Dev.txt
未上传,因为它不存在。
所以我认为没有什么可以帮助你的。只需确保您正在下载和上传的文件确实存在。
答案 1 :(得分:0)
(应该是评论,但是不可读)
这是给定ftp-server的目录:
ftp> dir
200 PORT command successful
150 Connecting to port 59225
drwxr-x--- 2 a6954408 a6954408 4096 Jun 19 04:37 .
drwx--x--x 3 a6954408 a6954408 4096 Jun 19 07:06 ..
-rw-r--r-- 1 a6954408 a6954408 91 Jun 13 11:29 .htaccess
-rw-r--r-- 1 a6954408 a6954408 53760 Jun 17 07:37 Chatterz.exe
-rw-r--r-- 1 a6954408 a6954408 24 Jun 19 07:15 Dev.txt
-rw----r-x 1 a6954408 a6954408 226 Jun 19 07:39 Log.txt
-rw-r--r-- 1 a6954408 a6954408 3 Jun 17 03:32 Test.txt
226-Options: -a -l
226 7 matches total
FTP: 497 Bytes empfangen in 0.06Sekunden 8.28KB/s
当然,下载Auto_Update.exe
会失败。它根本不在那里。
这就是你的日志所说的:
550 Can't open Auto_Update.exe: No such file or directory