退出辅助Perl脚本并返回主程序

时间:2015-08-11 13:39:22

标签: perl

我正在运行Perl脚本来控制另外两个脚本。主程序的用户可以使用以下行调用两个辅助脚本。

do 'Task_A.pl';

然后脚本运行 Task_A.pl ,但我想找到一种方法然后退出 Task_A.pl 并返回主程序。如果可能的话,我想返回上次调用辅助脚本的函数。我不确定这是什么,但我感谢任何可能的解决方案的输入。

这是整个主程序,目前并不多。

my $selecion;

#Looping variables.
my $program_loop = 1;

while ($program_loop == 1)
{
    print "Please choose one of the programs listed in the menu.\n";

    #Program menu where the user chooses from the presented options.
    print "[1] - Script A.\n";
    print "[2] - Script B.\n";
    print "[3] - Exit program.\n";

    my $user_input = <>;

    if ($user_input == 1) # <-- Scrip_A.pl
    {
        do 'Task_A.pl';
    }
    elsif ($user_input == 2) # <-- Scrip_B.pl
    {
        do 'Task_B.pl';     
    }
    elsif ($user_input == 3) # <-- Exit Program
    {
        #The user can choose to exit from the menu.
        print "The program will now exit.\n";
        exit;
    }
}

1 个答案:

答案 0 :(得分:3)

do无法启动其他流程。如果这是你想要的,请使用“system()”。

如果你想要,那么最好将所有内容放入要评估的文件中的函数中,并调用文件末尾的函数。

使用“返回”退出该功能并在执行后返回到下一条指令。