如果程式會建立新的檔案,在程式建立新檔案之前,我們應先確定是否存在同名的檔案,以免重要資料被覆蓋掉。對於這種問題,我們可以使用– 選項,檢測是否存在相同名字的檔案:
die "oops! a file called '$filename' already exists.\n"如果檔案在過去28 天內都未被修改,輸出警告:if -e $filename;
warn "config file is looking pretty old!\n"下例首先檢查檔案列表,找到那些大於 100kb 的檔案。如果乙個檔案僅是很大, 我們不一定會將其移到備份磁帶上去,除非同時其在最近 90 天內都未被訪問。if -m config > 28;
my @ariginal_files = qw/ fred barney betty wilma pebbles dino bam-bamm /;-rmy @big_old_files; #要移到備份磁帶上的檔案
foreach my $filename (@original_files)
檔案或目錄對此(有效的)使用者(effective user)或組是可讀的
-w檔案或目錄對此(有效的)使用者或組是可寫的
-x檔案或目錄對此(有效的)使用者或組是可執行的
-o檔案或目錄由本(有效的)使用者所有
-r檔案或目錄對此使用者(real user)或組是可讀的
-w檔案或目錄對此使用者或組是可寫的
-x檔案或目錄對此使用者或組是可執行的
-o檔案或目錄由本使用者所有
-e檔案或目錄名存在
-z檔案存在,大小為 0(目錄恒為 false)
-s檔案或目錄存在,大小大於 0(值為檔案的大小,單位:位元組)
-f為普通文字
-d為目錄
-l為符號鏈結
-s為 socket
-p為管道(entry is a named pipe(a "fifo"))
-b為 block-special 檔案(如掛載磁碟)
-c為 character-special 檔案(如 i/o 裝置)
-usetuid 的檔案或目錄
-gsetgid 的檔案或目錄
-kfile or directory has the sticky bit set
-t檔案控制代碼為 tty(系統函式 isatty()的返回結果;不能對檔名使用這個測試)
-t檔案有些像「文字」檔案
-b檔案有些像「二進位制」檔案
-m修改的時間(單位:天)
-a訪問的時間(單位:天)
-c索引節點修改時間(單位:天)
Perl中對於檔案檢測的選項,備忘
檢測選項含義 r 檔案或目錄對此 有效的 使用者 effective user 或組是可讀的 w 檔案或目錄對此 有效的 使用者或組是可寫的 x 檔案或目錄對此 有效的 使用者或組是可執行的 o 檔案或目錄由本 有效的 使用者所有 r 檔案或目錄對此使用者 real user 或組是可讀的 w 檔案...
perl 檔案操作
perl中檔案操 基礎在perl中,提供了三種檔案控制代碼 stdin,stdout,stderr.它們可以由父程序建立的檔案或者裝置會自動開啟.一般使用open函式來建立檔案控制代碼.open函式的語法是唯讀模式時為 open filehandle,somename 其中filehandle是檔案...
perl 檔案操作
1 讀取某檔案,如果該檔案不存在,則報錯,並提示出錯原因 open db,home ellie myfile or die can t open file n 2 讀寫檔案的方法 open fh,opens filename for reading.讀 the symbol is optional....