gpt4 book ai didi

windows - 命令的输入参数在批量编程时需要用户手动输入

转载 作者:可可西里 更新时间:2023-11-01 10:28:54 25 4
gpt4 key购买 nike

我正在使用 Windows 批处理程序来创建与 ftp 主机的 ftp 连接,并自动将文件上传到该主机。但是,ftp 命令在命令中没有获取用户名和密码的参数,我必须在后续命令中输入它。批处理文件如何等待 ftp 连接建立然后回显后续 ftp 命令的用户名和密码?感谢您的帮助。

最佳答案

实际上有一种不同的方法可以做到这一点。

Windows ftp 接受包含要运行的命令的“-s:filename”参数。您可以以“USER username\nPASSWD”pass 格式存储用户名/密码,当建立连接时,它们将首先运行。

确保事后删除该文件,或者更好的是使用不会写入磁盘的临时文件 ;)

编辑:为 coolkid 澄清。这确实是您的答案(感谢 Joey 的支持)。

明确地说,你在这里。

upload.cmd 的内容:

@echo off 
set /p name= Username?
set /p pass= Password?

REM Give dummy data to the human-friendly FTP prompts
REM We will pass actual FTP commands in the next stanza
echo dummy > ftp_commands.txt
echo dummy >> ftp_commands.txt

echo USER %name% >> ftp_commands.txt
echo PASS %pass% >> ftp_commands.txt
echo PUT ftp_commands.txt >> ftp_commands.txt

ftp -s:ftp_commands.txt ftp.mydomain.com

运行upload.cmd:

C:\>upload.cmd
Username?anonymous
Password?foobar
Connected to ftp.mydomain.com.
220 2k-32-71-e Microsoft FTP Service (Version 5.0).
User (ftp.mydomain.com:(none)):
331 Password required for dummy .

530 User dummy cannot log in.
Login failed.
ftp> USER anonymous
331 Anonymous access allowed, send identity (e-mail name) as password.

230 Anonymous user logged in.
ftp> PUT ftp_commands.txt
200 PORT command successful.

关于windows - 命令的输入参数在批量编程时需要用户手动输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5413917/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com