使用R語言批量修改文件名的方法
在R語言默認目錄下有一文件夾test,其下有三個文件,分別是test1.txt, text2.txt, text3.txt, 現在要對這三個文件進行批量的修改。主要使用到瞭for 循環和sub()字符替換函數。思路是先通過list.files()函數將test文件夾下面的三個文件名讀至變量,然後通過for循環來實現批量修改文件名。
1. 修改文件擴展名
folder<-setwd('~/test') files<-list.files(folder) for (f in files){ newname<-sub(".txt",'.xls',f) file.rename(f,newname) } dir()
顯示結果:
[1] “text1.xls” “text2.xls” “text3.xls”
2. 刪除文件擴展名
folder<-setwd('~/test') files<-list.files(folder) for (f in files){ newname<-sub('.xls','',f) file.rename(f,newname) } dir()
顯示結果:
[1] “text1” “text2” “text3”
3. 增添文件擴展名
這裡我們用到一個正則表達式,用‘$’代替字符的尾部,將字符尾部替換為’.doc’
folder<-setwd('~/test') files<-list.files(folder) for (f in files){ newname<-sub('$','.doc',f) file.rename(f,newname) } dir()
輸出結果:
“text1.doc” “text2.doc” “text3.doc”
4. 修改文件名中的字符
folder<-setwd('~/test') files<-list.files(folder) for (f in files){ newname<-sub('xt','ab',f) #將原文件中的字符xt,替換為字符ab file.rename(f,newname) } dir()
輸出結果:
[1] “teab1.doc” “teab2.doc” “teab3.doc”
5. 刪除文件名中的數字
把實驗目錄下的文件分別修改為tab.doc,teb.doc, tdb.doc,用“\\d”正則表達式代替文件中的數字。
folder<-setwd('~/test') files<-list.files(folder) for (f in files){ newname<-sub('\\d','',f) file.rename(f,newname) } dir()
輸出結果:
[1] “tab.doc” “tdb.doc” “teb.doc”
參考文章:
1.R語言文件目錄操作 https://www.omicsclass.com/article/338
2.R語言字符串替換 https://www.cnblogs.com/emanlee/p/4464018.html
到此這篇關於使用R語言批量修改文件名的文章就介紹到這瞭,更多相關R語言批量修改文件名內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- python 實現百度網盤非會員上傳超過500個文件的方法
- R語言操作文件方法詳解教程
- Python實現清除文件夾中重復視頻
- Python如何根據照片修改時間重命名並排序詳解
- php rename錯誤原因的查找方法