麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > Perl > 正文

Perl小技巧:文件操作

2019-11-18 17:22:48
字體:
來源:轉載
供稿:網友
opendirDIR,$path;@arr1=readdirDIR;@arr2=grep{-T"$path$_"}@arr1;#textfilesonly@arr3=grep{!-d"$path$_"}@arr1;#nodirectories@arr4=grep{-s"$path$_"<1024}@arr1;#lessthan1K代碼解釋:假如被測試的目錄項是一個文本文件,那么-T文件操作符就會返回真。其實針對目錄項的測試操作還有很多。(注:文件和目錄在系統中都是以目錄項的形式來管理的,所以要區別一個目錄項指向的是一個文件還是一個目錄需要相應的操作符)。注意上面的readdir函數返回指定目錄下的所有目錄項。因為在grep函數中對目錄項的測試需要文件的完全路徑,所以我們把$PATH(存儲了目錄項的部分路徑)和$_(存儲了目錄項的名字)中的內容聯合起來得到文件的完全路徑*對目錄進行遞歸搜索*
useFile::Find;find(/&handleFind,'imac:documents:code');subhandleFind{my$foundFile=$File::Find::name;運行結果:trick.of.the.week代碼討論:好了,成功了。問題是要找出文件的名字,要不帶任何路徑前綴,不帶任何擴展名。File::Basename模塊可以使這很容易實現,我們只需要把文件的完全路徑還有要剔除的擴展名傳給它。上面的path變量是文件的完全路徑,注意文件分隔符是/,這個字符很特殊,因為它是操作系統的保留字符。這里你不能在文件名里使用系統的分隔符。你應該知道當今流行的操作系統都使用自己獨特的文件分隔符:Unix使用/,Windows使用/,Macintosh使用:(順便說一下,在Windows上的Perl腳本中,你既可以使用/也可以使用/作為文件分隔符,Perl的解釋器能理解你的意思)。File::Basename,當然,能正確在完全路徑中找到文件名,不論時在什么系統下。*改變文件的所有者*
($uid,$gid)=(getpwnam($username))[2,3]ordie"$usernotinpasswdfile";chown($uid,$gid,$file)orwarn"couldn'tchown$file.";
運行結果:無輸出代碼討論:有的時候,你可能知道一個用戶名,而你想用這個用戶名做些事,比如改變一個文件的所有者。但是不幸的是,Perl的chown命令不能接受用戶名作為參數,但是可以接受一對數字:userid和groupid。雖然有這些不便之處,Perl并沒有讓我們陷入困境,我們可以把用戶名作為getpwnam函數的參數,獲得一個數組,里面包含了用戶名對應的userid和groupid,分別對應著數組里的第二和第三個元素。
上一篇:Perl簡單模塊指南

下一篇:Perl簡介

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 亚洲福利在线观看视频 | 精国品产一区二区三区有限公司 | 在线观看一区二区三区四区 | 日韩欧美激情视频 | 欧美日韩亚洲精品一区二区三区 | 久久国产不卡 | 欧美人与牲禽动交精品一区 | 日日噜噜噜噜久久久精品毛片 | 黄色视屏免费在线观看 | 欧美成人激情在线 | 久久色播| 欧美aⅴ视频| 免费小毛片 | 国产免费一区二区三区在线能观看 | 在线中文日韩 | 黄视频网站免费观看 | 手机免费看一级片 | 中文字幕欧美日韩 | 毛片视频免费播放 | 小雪奶水翁胀公吸小说最新章节 | 成人毛片在线免费观看 | 久久久久国产精品久久久久 | 欧美日韩观看 | 久久最新视频 | 久久我不卡 | 国产精品久久久久久久久久久天堂 | 久久久免费电影 | 操穴视频 | 最新中文字幕日本 | 久久男人天堂 | 91精品国产综合久久婷婷香 | 免费久久精品 | 国产黄色录像片 | 成人毛片网站 | 91九色视频观看 | 亚洲天堂中文字幕在线观看 | 国产在线播放91 | 精品国产一区二区三区在线观看 | 羞羞视频免费网站 | 免费国产不卡午夜福在线 | 香蕉秀 |