用迴圈控制分步驟執行過長的Perl指令碼

來源:互聯網
上載者:User
最近在寫一個比較長的Perl指令碼,用來自動化實現做task的流程與步驟。但是,其中有一些很容易出錯的步驟,比如說我的VPN沒有開、某某服務沒啟動等,就執行不了一些操作,從而導致指令碼運行出錯。
這個時候,我只好先修複配置錯誤,然後重新從頭執行指令碼。這樣浪費了大量的時間,也弄得我很煩躁。工作原本就沒太多樂趣,而我,哪裡可能記得住這麼多瑣碎的事呢?
今天寫了一個迴圈控制的東西,能在出錯的步驟停止下來,等我修改了出錯的步驟(系統內容而非代碼本身),又能從中止的地方重新開始。範例程式碼如下:
use warnings; use strict;
sub test1 { print “test1\n”; }
sub test2 { print “test2\n”; }
sub test3 { print “test3\n”;
}
my $result = undef;
sub controller { my $code_array = shift; my ($code,$code_name) = @$code_array; while (1) { my $new_result = eval {&$code}; if ($@) { print “$@ \n Someting is wrong when execute $code_name, please input ENTER [...]
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.