所以我正在尝试做这样的事情:
ftp my.ip.add.ress
(user id)
(password)
cd /the/directory
send C:/code/project1/*
bye
我知道您可以在第一次启动时通过命令行发送 Windows ftp
命令,例如 -send
,但问题是我可以使用 .bat 脚本来与它启动的程序互动?默认情况下发生的是第一行:
ftp my.ip
启动 ftp,但后续行永远不会运行,直到 ftp
退出。
编辑
表达这个问题的另一种方式是“当 stdin
下一次检查输入时,是否可以使用 .bat 文件对文本行进行排队以提供给 stdin
?”
最佳答案
据我所知,命令 shell 不是多线程的,因此当另一个交互式 shell 程序正在其中执行时,批处理无法继续执行。
您需要将 FTP 命令移动到它们自己的文件中,并将其传递给 FTP 程序,以便它可以将它们作为自己的内部脚本运行。
ftp -s:filename
指定包含FTP命令的文本文件;命令将在 FTP 启动后自动运行。
关于windows - BAT 脚本发送命令给它启动的程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4441943/