我正在制作一个程序,当我登录计算机时,最终能够自动启动,并允许我从各种程序中选择启动。我目前有两个(刚开始)。无论如何,我想知道,因为它是通过CMD运行的,当我输入一定值时,如何让程序关闭CMD。我的代码:
print "What would you like to run? (1 for Chrome and 2 for Calculator \"e\" for exit) \n";
my $prog_run = <STDIN>;
if ($prog_run == 1){
#Chrome Function
system('"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"');
}elsif ($prog_run == 2){
#Calculator Function
system('"C:\Windows\System32\calc.exe"');
}elsif ($prog_run == "e"){
#Exit Fucntion
print "Exiting........";
}
答案 0 :(得分:1)
}elsif ($prog_run == "e"){
==
是数字比较运算符;它只适用于数字。由于"e"
是一个字符串,因此您需要使用字符串比较运算符eq
来比较它:
} elsif ($prog_run eq "e") {
但是,您从标准输入读取的行默认情况下会有一个换行符。您可以事先将其包含在字符串("e\n"
)或chomp $prog_run;
中以删除换行符。
反正。
如果您处于循环中,则可以使用last
退出。或者,您可以使用exit
制作整个Perl流程......好吧,退出。