do
{
print"CHOOSE ANY OF THE FOLLOWING OPTIONS:\n";
print"==========================================\n";
print"1-LOGIN & LOGOUT\n";
print"2-MAKE CALL\n";
print"3-EXIT\n";
print"==========================================\n";
print("\nENTER YOUR OPTION: ");
$option=<>;
if($option==1)
{
print("IN THE LOGIN & LOGOUT SCENARIO\n");
&Login_logout();
}
elsif($option==2)
{
print("IN THE MAKE CALL SCENARIO\n");
}
elsif($option==3)
{
print("\nEXITING...\n");
exit(0);
}
else
{
print"\nINSERT A VALID OPTION...!!!\n";
}
}while(1);
這裏子例程Login_logout()調用一個SIPp實例(命令行實例)。在成功完成命令行實例之後,標量$選項會獲取一些垃圾值並觸及else條件並打印行「INSERT A VALID OPTION ... !!!」。這一過程繼續進行,直到Konsole結束。在Perl中調用命令行實例時在循環中採用垃圾值變量
有人可以告訴我腳本中我錯了嗎?
$ option需要一些垃圾值?什麼垃圾值? – zpmorgan 2012-02-10 05:38:04
不知道需要什麼,我試圖將其打印出來,但沒有顯示任何內容。可能在命令行退出時返回一些值,$選項將它作爲$ ARG [0]值。我可能不確定。 – Shantanu 2012-02-10 06:06:52
我試過你的代碼(移除了對'Login_logout()')的調用,它對我來說工作正常。 'Login_logout()'做了什麼?你能否更新你的文章以包含其來源? – 2012-02-10 06:43:21