全部學(xué)習(xí)匯總: GreyZhang/perl_basic: some perl basic learning notes. (github.com)
???????? 使用通配符處理文件一般是用于文件的拷貝、刪除以及對(duì)文件逐個(gè)分析等功能。在Perl中遇到的相應(yīng)的功能基本上也是如此。通配符匹配處理文件(文件名)需要使用glob指令。
???????? 寫個(gè)簡(jiǎn)單的測(cè)試程序:
???????? 以上程序獲取了當(dāng)前目錄下的所有文件名稱然后逐個(gè)輸出其文件名,執(zhí)行結(jié)果如下:
???????? 從結(jié)果上看來,通配符獲取到的不僅僅是文件名,連同文件夾也一同獲取了。有點(diǎn)繼承UNIX文件系統(tǒng)的思想的意思,一切都是文件。
???????? 簡(jiǎn)單修改一下參數(shù),輸出當(dāng)前目錄中的所有的Perl程序,后綴名為pl的文件。
???????? 執(zhí)行結(jié)果如下:
???????? 的確是輸出了所期待的結(jié)果。
???????? Perl中還有這個(gè)功能的一個(gè)變形形式,直接通過鉆石符號(hào)處理,處理的方式也讀取文件句柄的方式差不多。修改代碼如下:
???????? 執(zhí)行結(jié)果:
???????? 可以看得出,這個(gè)執(zhí)行結(jié)果跟前一次的程序執(zhí)行結(jié)果是一致的。
后記:
???????? 學(xué)完了這部分功能,我想起了自己剛剛工作的時(shí)候需要完成的一個(gè)工作中就用到了這個(gè)功能。當(dāng)時(shí)需要處理simulink模型,而我當(dāng)時(shí)的M腳本水平比較差,Perl的水平也不高,于是就把兩部分功能糅合到了一塊兒來使用。為了獲取模型的文件名,我變使用了glob方式的通配符匹配方法。而且,從自己自學(xué)參考的教程中抄了一段我至今也沒怎么學(xué)會(huì)的代碼(如今有些不想學(xué)了,因?yàn)槲艺莆崭鼮楹?jiǎn)單易懂又易寫易維護(hù)的方式)。最終,東拼西湊的代碼居然神奇地完成了功能而且被別人持續(xù)使用了好長(zhǎng)時(shí)間。文章來源:http://www.zghlxwxcb.cn/news/detail-500784.html
???????? 不過,現(xiàn)在想想當(dāng)時(shí)的那個(gè)破程序,不禁覺得有些羞愧感。以我現(xiàn)在的水平,斷然不會(huì)寫出那么差勁兒的代碼。雖說那段代碼能夠正常使用,不過維護(hù)總還是需要的,不知道我給現(xiàn)在的那個(gè)倒霉蛋留下了這個(gè)隨時(shí)肯能鉆出馬蜂的馬蜂窩。對(duì)不住了,那個(gè)倒霉的兄弟!文章來源地址http://www.zghlxwxcb.cn/news/detail-500784.html
到了這里,關(guān)于1748_Perl中使用通配符處理文件的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!