Perl 的特殊符號

poplarbbs發表於2009-11-28

Perl的特殊符號

 

@       陣列                           

$x{}   x名字前面是美元符號($),後面是花括號({}),則其為 hash 元素
%       要引用整個 hash,使用百分號(“ )作為字首。前面幾頁中使用的 hash 的名字為%family_name。
$!      系統產生的一些可讀的資訊,也可能是出錯的資訊
$_     子函式引數變數自己本身
@_     子程式的私有變數
&x      呼叫子函式x
<>    資料輸入.如果沒有指定檔名,則其從標準輸入流中自動開啟和關閉一系列檔案進行讀入

 

Perl預設的內部變數

 

$- 當前頁可列印的行數,屬於Perl格式系統的一部分 
$! 根據上下文內容返回錯誤號或者錯誤串 
$” 列表分隔符 
$# 列印數字時預設的數字輸出格式 
$$ Perl直譯器的程式ID 
$% 當前輸出通道的當前頁號 
$& 與上個格式匹配的字串 
$( 當前程式的組ID 
$) 當前程式的有效組ID 
$* 設定1表示處理多行格式.現在多以/s和/m修飾符取代之. 
$, 當前輸出欄位分隔符 
$. 上次閱讀的檔案的當前輸入行號 
$/ 當前輸入記錄分隔符,預設情況是新行 
$: 字元設定,此後的字串將被分開,以填充連續的欄位. 
$; 在模擬多維陣列時使用的分隔符. 
$? 返回上一個外部命令的狀態 
$@ Perl直譯器從eval語句返回的錯誤訊息 
$[ 陣列中第一個元素的索引號 
$\ 當前輸出記錄的分隔符 
$] Perl直譯器的子版本號 
$^ 當前通道最上面的頁面輸出格式名字 
$^A 列印前用於儲存格式化資料的變數 
$^D除錯標誌的值 
$^E在非UNIX環境中的作業系統擴充套件錯誤資訊 
$^F最大的檔案捆述符數值 
$^H由編譯器啟用的語法檢查狀態 
$^I內建控制編輯器的值 
$^L傳送到輸出通道的走紙換頁符 
$^M備用記憶體池的大小 
$^O作業系統名 
$^P指定當前除錯值的內部變數 
$^R正規表示式塊的上次求值結果 
$^S當前直譯器狀態 
$^T從新世紀開始算起,腳步本以秒計算的開始執行的時間 
$^W警告開關的當前值 
$^X Perl二進位制可執行程式碼的名字 
$_ 預設的輸入/輸出和格式匹配空間 
$| 控制對當前選擇的輸出檔案控制程式碼的緩衝 
$~ 當前報告格式的名字 
$` 在上個格式匹配資訊前的字串 
$’ 在上個格式匹配資訊後的字串 
$+ 與上個正規表示式搜尋格式匹配的最後一個括號 
$< 當前執行直譯器的使用者的真實ID 
$<digits>含有與上個匹配正規表示式對應括號結果 
$= 當前頁面可列印行的數目 
$> 當前程式的有效使用者ID 
包含正在執行的指令碼的檔名 
$ ARGV 從預設的檔案控制程式碼中讀取時的當前檔名 
%ENV 環境變數列表 
%INC 通過do或require包含的檔案列表 
%SIG 訊號列表及其處理方式 
@_ 傳給子程式的引數列表 
@ARGV 傳給指令碼的命令列引數列表 
@INC 在匯入模組時需要搜尋的目錄列表

 

Perl中模組的安裝方法

 

#perl –MCPAN –e shell
install Bundle::CPAN  更新
reload cpan  重新載入
install Tk   安裝pm,用install加上模組名就行了

Perl中不錯的文章 

 

關於perl變數作用域(原譯) http://bbs.chinaunix.net/thread-612342-1-1.html

在perl語法中

BLOCK是一個用{}包圍的程式碼塊。EXPR可以是子函式名、正規表示式等。LIST是輸入列表

********************************************************************

*本貼轉自扶凱,http://www.php-oa.com/2008/11/15/perl-note.html

********************************************************************

相關文章