我有一个我需要调整的perl脚本。
脚本运行并要求我手动输入IP地址,但是当我要求输入IP地址时我想硬编码,所以我需要告诉脚本键入IP然后按回车键输入继续编写脚本。
有人可以告诉我怎么做吗?我敢肯定这可能是非常基本的东西,但我不是一个脚本编写者,所以我不知道该怎么做。
我需要输入IP并按Enter键的脚本如下所示:
print "\nPlease enter the IP address of the node:";
chomp($nodeIP= <STDIN>);
提前致谢。
答案 0 :(得分:5)
最简单的是替换
print "\nPlease enter the IP address of the node:";
chomp($nodeIP= <STDIN>);
只是
$nodeIp="192.168.2.1";
当然使用你的地址,而不是我的路由器。
开始写你自己的stdin,或者模拟击键很麻烦。
您不需要chomp()方法,因为它只用于从行的末尾删除Enter。
答案 1 :(得分:0)
您是否尝试使用另一个脚本自动执行一个脚本?如果是这种情况,您最好使用名为expect
(Expect: A Tool for Automating Interactions的工具。我已经将它用于一些奇怪的安装脚本。
如果您要做的是修改Perl脚本以等待用户提示,那么我将替换:
print "\nPlease enter the IP address of the node:";
chomp($nodeIP= <STDIN>);
使用
$nodeIP = "1.2.3.4";
print "\nThe IP is $nodeIP. If this is correct press ENTER to continue.\n";
<STDIN>
如果正在等待 ENTER 键,请按下STDIN
并将其扔掉。