Пакет Windows не выполняется - PullRequest
0 голосов
/ 16 апреля 2019

Я пытаюсь использовать приведенный ниже код для передачи файла с рабочего стола на хост.

@echo off
Setlocal enabledelayedexpansion
Set >set
setlocal
SET infile= 
SET outfile=
SET defuser=
SET defpwd=
:startover
IF "%defuser%"=="" (
set /p defuser="Enter User ID: " 
)
IF "%defpwd%"=="" (
set /p defpwd="Enter Password: "
)

set /p infile="Enter the path name:" 

set /p outfile="Enter the target filename:"

@echo **************entering ftp step**************
echo user %defuser%> ftpcmd.dat
echo %defpwd%>> ftpcmd.dat
echo ascii>> ftpcmd.dat
echo lcd>> ftpcmd.dat
echo put %infile% '%outfile%'>> ftpcmd.dat
echo bye>> ftpcmd.dat

@echo ***********************execute ftp**************
ftp -n -s:ftpcmd.dat x.xx.xxx.xxx

@echo ****************executed ftp***********************
exit/b

Однако ftp -n -s: ftpcmd.dat никогда не запускается, я имею в виду, что ftp никогда не выполняется, вместо этого код возвращается к Enter User ID. Я не знаю, почему он не подчиняется команде выхода.

Любое предложение по этому вопросу было бы полезно.

С уважением, Вишь

1 Ответ

0 голосов
/ 16 апреля 2019

Согласно моему комментарию, вот пример вашего файла, написанный для того, чтобы вам не приходилось перемещать, переименовывать или удалять экземпляры ftp.com, ftp.exe, ftp.bat, ftp.cmd, ftp.vbs, ftp.vbe, ftp.js, ftp.jse, ftp.wsf, ftp.wsh, ftp.msc и т. Д. В текущем каталоге в первую очередь.

@Echo Off
Set "defuser="
Set "defpwd="

:startover
If Not Defined defuser Set /P "defuser=Enter User ID: "
If Not Defined defpwd Set /P "defpwd=Enter Password: "

Set "infile="
Set /P "infile=Enter the path name: "
If Not Defined infile GoTo startover

Set "outfile="
Set /P "outfile=Enter the target filename: "
If Not Defined outfile GoTo startover

Echo  *************** entering ftp step ***************
(   Echo user %defuser%
    Echo %defpwd%
    Echo ascii
    Echo lcd
    Echo put %infile% '%outfile%'
    Echo bye
)>"ftpcmd.dat"

Echo  ****************** execute ftp ******************
"%__AppDir__%ftp.exe" -n -s:ftpcmd.dat x.xx.xxx.xxx

Echo ****************** executed ftp ******************
Exit /B
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...