Perl文件屬性函數(shù)
本文和大家重點(diǎn)學(xué)習(xí)一下Perl文件屬性函數(shù)的概念,Perl文件重定位函數(shù),鏈接和符號鏈接函數(shù),Perl文件許可權(quán)函數(shù)和其他屬性函數(shù)等內(nèi)容,希望通過本文的學(xué)習(xí)你對Perl文件屬性函數(shù)有明確的認(rèn)識(shí)。
Perl文件屬性函數(shù)
1、Perl文件重定位函數(shù)
函數(shù)名rename
調(diào)用語法rename(oldname,newname);
解說改變Perl文件名或移動(dòng)到另一個(gè)目錄中,參數(shù)可為字符串或表達(dá)式。
函數(shù)名unlink
調(diào)用語法num=unlink(filelist);
解說刪除Perl文件。參數(shù)為Perl文件名列表,返回值為實(shí)際刪除的Perl文件數(shù)目。
此函數(shù)之所以叫unlink而不叫delete是因?yàn)樗鼘?shí)際所做的是刪除Perl文件的鏈接。
2、鏈接和符號鏈接函數(shù)
函數(shù)名link
調(diào)用語法link(newlink,file);
解說創(chuàng)建現(xiàn)有Perl文件的鏈接--硬鏈接,file是被鏈接的Perl文件,newlink是被創(chuàng)建的鏈接。
成功返回真,失敗返回假。
當(dāng)刪除這兩個(gè)鏈接中的一個(gè)時(shí),還可以用另一個(gè)來訪問該P(yáng)erl文件。
函數(shù)名symlink
調(diào)用語法symlink(newlink,file);
解說創(chuàng)建現(xiàn)有Perl文件的符號鏈接,即指向Perl文件名,而不是指向Perl文件本身。參數(shù)和返回值同上。
當(dāng)原Perl文件被刪除(如:被unlinke函數(shù)刪除),則被創(chuàng)建鏈接不可用,除非再創(chuàng)建一個(gè)與原被鏈接的Perl文件同名的Perl文件。
函數(shù)名readlink
調(diào)用語法filename=readlink(linkname);
解說如果linkname為符號鏈接Perl文件,返回其實(shí)際指向的Perl文件。否則返回空串。
3、Perl文件許可權(quán)函數(shù)
函數(shù)名chmod
調(diào)用語法chmod(permissions,filelist);
解說改變Perl文件的訪問權(quán)限。參數(shù)為:
1、permissions為將要設(shè)置的權(quán)限,其含義見上述mkdir中權(quán)限表
2、filelist為欲改變權(quán)限的Perl文件列表
函數(shù)名chown
調(diào)用語法chown(userid,groupid,filelist);
解說改變Perl文件的屬主,有三個(gè)參數(shù):
1、userid:新屬主的(數(shù)字)ID號
2、groupid:新的組(數(shù)字)ID號,-1為保留原組
3、filelist:欲改變屬主的Perl文件列表
函數(shù)名umask
調(diào)用語法oldmaskval=umask(maskval);
解說設(shè)置Perl文件訪問權(quán)限掩碼,返回值為當(dāng)前掩碼。
4、其它屬性函數(shù)
函數(shù)名truncate
調(diào)用語法truncate(filename,length);
解說將Perl文件的長度減少到length字節(jié)。如果Perl文件長度已經(jīng)小于length,則不做任何事。其中filename可以為Perl文件名,也可以為Perl文件變量
函數(shù)名stat
調(diào)用語法stat(file);
解說獲取Perl文件狀態(tài)。參數(shù)file可為Perl文件名也可為Perl文件變量。返回列表元素依次為:
Perl文件所在設(shè)備
內(nèi)部參考號(inode)
訪問權(quán)限
硬鏈接數(shù)
屬主的(數(shù)字)ID
所屬組的(數(shù)字)ID
設(shè)備類型(如果file是設(shè)備的話)
Perl文件大小(字節(jié)數(shù))
最后訪問時(shí)間
最后修改時(shí)間最后改變狀態(tài)時(shí)間
I/O操作最佳塊大小
分配給該P(yáng)erl文件的塊數(shù)
函數(shù)名lstat
調(diào)用語法lstat(file);
解說與stat類似,區(qū)別是將file看作是符號鏈接。
函數(shù)名time
調(diào)用語法currtime=time();
解說返回從1970年1月1日起累計(jì)秒數(shù)。
函數(shù)名gmtime
調(diào)用語法timelist=gmtime(timeval);
解說將由time,stat或-A和-MPerl文件測試操作符返回的時(shí)間轉(zhuǎn)換成格林威治時(shí)間。返回列表元素依次為:
秒
分鐘
小時(shí),0~23
日期
月份,0~11(一月~十二月)
年份
星期,0~6(周日~周六)
一年中的日期,0~364
是否夏令時(shí)的標(biāo)志
詳見UNIX的gmtime幫助。
函數(shù)名localtime
調(diào)用語法timelist=localtime(timeval);
解說與gmtime類似,區(qū)別為將時(shí)間值轉(zhuǎn)換為本地時(shí)間。
函數(shù)名utime
調(diào)用語法utime(acctime,modtime,filelist);
解說改變Perl文件的最后訪問時(shí)間和最后更改時(shí)間。例如:
$acctime=-A"file1";
$modtime=-M"file1";
@filelist=("file2","file3");
utime($acctime,$modtime,@filelist);
函數(shù)名fileno
調(diào)用語法filedesc=fileno(filevar);
解說返回Perl文件的內(nèi)部UNIXPerl文件描述。參數(shù)filevar為Perl文件變量。
函數(shù)名fcntl,flock
調(diào)用語法fcntl(filevar,fcntlrtn,value);
flock(filevar,flockop);
解說詳見同名UNIX函數(shù)幫助。
【編輯推薦】
- Perl文件讀寫方法詳解
- 深入學(xué)習(xí)Perl文件系統(tǒng)用法
- 解析Perl文件系統(tǒng)應(yīng)用中函數(shù)的語法
- Perl模式匹配經(jīng)驗(yàn)總結(jié)
- Perl文件句柄概念詳解