我正在Perl中運行一個程序,它在一個點上評估從子程序中調用的if語句中的數據,例如,在Perl中有沒有一種方法可以重新啓動當前正在運行的程序?
sub check_good {
if (!good) {
# exit this subroutine
# restart program
}
else {
# keep going
}
} # end sub
我遇到的問題是退出並重新啓動。我知道我可以直接使用exit 0;
直接退出,但顯然這是不正確的,如果我想回到開始。我試着調用基本上啓動程序的子程序,但是當它運行後,它會再次回到這一點。 我想過把它放在while循環中,但這意味着將整個文件放在循環中,這將是非常不切實際的。
我實際上並不知道這是否可能,所以任何輸入都會很好。
原諒我的無知 - 我知道@ARGV用於命令行參數,但我已使用所以可以我假設他們將數據存儲在相同的內存位置(或其他)? –
dgBP
這是您可以輕鬆測試的主張。 – DavidO
如果你使用stdin,那麼你將不得不緩衝它自己,也許在臨時文件中。 – tripleee