當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


R list.files 列出目錄/文件夾中的文件


R語言 list.files 位於 base 包(package)。

說明

這些函數生成指定目錄中文件或目錄名稱的字符向量。

用法

list.files(path = ".", pattern = NULL, all.files = FALSE,
           full.names = FALSE, recursive = FALSE,
           ignore.case = FALSE, include.dirs = FALSE, no.. = FALSE)

       dir(path = ".", pattern = NULL, all.files = FALSE,
           full.names = FALSE, recursive = FALSE,
           ignore.case = FALSE, include.dirs = FALSE, no.. = FALSE)

list.dirs(path = ".", full.names = TRUE, recursive = TRUE)

參數

path

完整路徑名的字符向量;默認對應於工作目錄 getwd() 。執行波形符擴展(請參閱path.expand)。缺失值將被忽略。帶有標記編碼的元素將被轉換為本機編碼(如果失敗,則被視為不存在)。

pattern

可選的 regular expression 。僅返回與正則表達式匹配的文件名。

all.files

一個邏輯值。如果 FALSE ,則僅返回可見文件的名稱(在 Unix-style 可見性之後,即名稱不以點開頭的文件)。如果 TRUE ,將返回所有文件名。

full.names

一個邏輯值。如果 TRUE ,目錄路徑將添加到文件名前麵以提供相對文件路徑。如果 FALSE ,則返回文件名(而不是路徑)。

recursive

合乎邏輯的。列表是否應該遞歸到目錄中?

ignore.case

合乎邏輯的。 pattern-matching 應該不區分大小寫嗎?

include.dirs

合乎邏輯的。子目錄名稱是否應該包含在遞歸列表中? (它們始終處於非遞歸狀態)。

no..

合乎邏輯的。 "."".." 也應該從非遞歸列表中排除嗎?

包含指定目錄中文件名稱的字符向量(如果沒有文件則為空)。如果路徑不存在、不是目錄或不可讀,則會跳過該路徑。

文件按字母順序排序,如果是 full.names = TRUE 則在完整路徑上。

list.dirs 隱式具有 all.files = TRUE ,如果是 recursive = TRUE ,則答案包括 path 本身(前提是它是可讀目錄)。

dirlist.files 的別名。

注意

文件命名約定取決於平台。模式匹配適用於操作係統返回的文件名的大小寫。

在 POSIX 文件係統上,遞歸列表將遵循目錄的符號鏈接。

例子

list.files(R.home())
## Only files starting with a-l or r
## Note that a-l is locale-dependent, but using case-insensitive
## matching makes it unambiguous in English locales
dir("../..", pattern = "^[a-lr]", full.names = TRUE, ignore.case = TRUE)

list.dirs(R.home("doc"))
list.dirs(R.home("doc"), full.names = FALSE)

作者

Ross Ihaka, Brian Ripley

也可以看看

file.infofile.accessfiles 用於更多文件處理函數,file.choose 用於交互式選擇。

glob2rx 將通配符(係統文件命令和 shell 使用的)轉換為正則表達式。

Sys.glob 用於文件路徑上的通配符擴展。 basenamedirname ,用於將路徑拆分為非目錄(又名‘filename’)和目錄部分。

相關用法


注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 List the Files in a Directory/Folder。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。