Re: [問題] 如何修改一個資料夾中的所有檔案?

看板Perl作者 (檸檬汁)時間18年前 (2007/05/05 21:41), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/4 (看更多)
※ 引述《imce (蜥蜴)》之銘言: : ※ 引述《CrowOnTorii (烏鴉)》之銘言: : : 檔案形式如下:125,160 : : ... : : xmax_288 xmin_7 : : ymax_170 ymin_7 : : 現在我想要把每個檔案的最後兩列都砍掉然後存回原檔案 : : 也就是把xmax,ymax這兩列砍掉 : opendir(DIR,"."); # : @DIR=readdir(DIR); #把.資料夾底下的檔案讀入@DIR : close(DIR); # : foreach(@DIR) : { : next if ($_ =~ /^\./); #略過.和..兩個 : open(FILE,"$_");@temp=<FILE>;close(FILE); #檔案讀入@temp : pop(@temp);pop(@temp); #把後面兩行去掉 : open(FILE,">$_");print FILE join("",@temp);close(FILE); #檔案寫回去 : } : #應該是這樣吧 use Tie::File; foreach (<*>) { tie my @text, 'Tie::File', $_; $#text -= 2; untie @text; } 為防誤砍不該砍的行,可將藍色部分改為: -- $#text while ($text[-1] =~ /^[xy]max/); -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 143.89.144.107
文章代碼(AID): #16F8bui0 (Perl)
文章代碼(AID): #16F8bui0 (Perl)