Windows批处理脚本为Perl脚本提供用户输入

时间:2013-03-28 00:28:30

标签: windows perl input batch-file

我正在运行一个等待用户输入的Perl脚本。如何获取批处理文件来运行脚本并提供输入?

我无法修改Perl源代码以接受命令行参数。这是一个例子。

::fill.bat
perl "lazy.pl"
::Pause for 25 seconds tow wait for program to receive user input
ping -n 25 -w 1000 127.0.0.1 > nul 
@Echo off
::Want this to enter "y" when asked "Update script before using? [y]"
Echo y

enter image description here

1 个答案:

答案 0 :(得分:0)

尝试将您的答案用于执行perl脚本。

echo y| perl "lazy.pl"

此方法works elsewhere。我打赌它也可能在这里工作。


对于更复杂的脚本交互,请尝试expectexpect是一个基于TCL的脚本解释器,允许与控制台应用程序进行脚本交互。这是一个示例Expect for Windows脚本:

spawn perl lazy.pl
expect "Update script before using? [y]"
exp_send "y\r"
expect "Another question? [y]"
exp_send "y\r"