top
Loading...
perl的進程管理簡介
當你向系統shell發送一個命令行時,shell創建一個進程來執行這個命令。這個新進程成為shell的子進程,它的執行不依賴于shell但又與shell相互協調。

  同樣,Perl程序也能啟動新進程。

使用system()和exec()

  生成新進程的最簡單的方法就是用system操作符。如:

    system("date");

  若要將輸出送至now_day文件,則可以:

    system("date>now_day") ||die "不能建立now_day文件";

使用單引號

  產生進程的另一方法是將shell命令置于兩個單引號之間。如:

    $nowday="現在時間:".'date'

  $nowday的值為“現在時間:”和date命令的結果的連接。即:"現在時間:Fri Feb 18 23:49:23 PDT 1998"

綜合范例

  舉一個綜合例子,要求從date的輸入中分析,周未時打印"周未了,別太辛苦",否則打印"好好工作"。簡潔的寫法為:

    if('date'=~/^S/){
    printf "網上學園歡迎您,周未了,別太辛苦";
    } else {
    printf "好好工作n"
    }

  date的輸出格式第一個字節為星期,英語中恰好只有周未為"S"打頭,因此使用了常規表達式判斷第一個字符是否為S,即可達到要求。 
北斗有巢氏 有巢氏北斗