perl函式說明 exit

2021-06-22 14:34:56 字數 541 閱讀 1831

這個函式把 expr 當作乙個整數計算然後立即以該數值為最終的程式錯誤狀態退出。如果省略了 expr,那麼該函式以 0 狀態退出(意思是「沒有錯誤」)。下面是乙個程式片段,它讓使用者通過敲入 x 或 x 退出程式:

$ans = 

exit if $ans =~ /^[xx]/;

如果別人有任何機會可以捕獲所發生的任何錯誤,那麼你就不應該用 exit 退出子過程。應該用 die,它可以用乙個 eval 捕獲。或者使用 carp 模組的 die 的封裝,比如 croak 或者 confess。

我們說 exit 函式立即退出,但這是乙個赤裸裸的謊言。它盡可能快地退出,但是它首先呼叫任何已經定義了的 end 過程做退出時處理。這些過程無法退出 exit,儘管它們可以通過設定 $? 變數改變最終的退出值。同樣,任何定義了 destroy 方法的類都將在程式真正退出前代表它的所有物件呼叫該方法。如果你確實需要忽略退出處理,那麼你可以呼叫 posix 模組的 _exit 函式以避免所有 end 和析構器處理。而如果沒有 posix 可用,你可以 exec "/bin/false" 或者類似的東西。

perl函式說明 chroot

chroot chroot filename chroot如果成功,filename 成為當前程序的新的根目錄 用 開頭的路徑名的起點。這個目錄是跨 exec 呼叫繼承的,以及被所有 chroot 呼叫後 fork 出來的子程序繼承。我們沒有辦法撤消一次 chroot。出於安全原因,只有超級使用者可...

perl函式說明 close

close close filehandle close這個函式關閉與 filehandle 關聯的檔案,套接字,或者管道。如果省略引數,那麼它關閉當前選定的檔案控制代碼。如果關閉成功它返回真,否則返回假。如果你準備馬上就對 filehandle 做另外一次 open,那麼你用不著關閉它,因為下一次...

perl函式說明 defined

defined defined expr defined這個函式返回乙個布林值,表明 expr 是否是乙個已經定義的數值。你處理的大多數資料都是已經定義的,但是乙個標量如果不包含有效的字串,數字,或者引用值,那麼就說它是未定義的數值,或者簡稱 undef。把乙個標量變數初始化為乙個特定的值將定義它,...