Sys.glob
位於 base
包(package)。 說明
對文件路徑進行通配符擴展(也稱為‘globbing’)的函數。
用法
Sys.glob(paths, dirmark = FALSE)
參數
paths |
相對或絕對文件路徑模式的字符向量。缺失值將被忽略。 |
dirmark |
邏輯:與尚未以 |
細節
這會擴展文件路徑中的波浪號(請參閱 tilde expansion )和通配符。有關通配符擴展的準確詳細信息,請參閱有關 glob
係統調用的係統文檔。有一個 POSIX 1003.2 標準(請參閱 https://pubs.opengroup.org/onlinepubs/9699919799/functions/glob.html ),但某些操作係統會超出此標準。
所有係統都應解釋*
(匹配零個或多個字符)、?
(匹配單個字符)和(可能)[
(開始字符類或範圍)。以分隔符結尾的路徑的處理取決於係統。在兼容 POSIX-2008 的操作係統上,它們將(僅)匹配目錄,但由於它們在 Windows 上不是有效的文件路徑,因此它們不會匹配任何內容。 (早期的 POSIX 標準允許它們匹配文件。)
這些細節的其餘部分是指示性的(並且基於 POSIX 標準)。
如果文件名開頭為.
這可能需要顯式匹配:例如Sys.glob("*.RData")
可能匹配也可能不匹配‘.RData' 但通常不會匹配 '.aa.RData’。請注意,這是依賴於平台的:例如在 Solaris 上Sys.glob("*.*")
火柴 '.' 和 '..’。
[
開始一個字符類。如果 [...]
中的第一個字符不是 !
,則這是一個將單個字符與任何指定字符相匹配的字符類。該類不能為空,因此可以包含]
(隻要它是第一個)。如果第一個字符是 !
,則字符類匹配不屬於指定字符的單個字符。字符類中的.
是否與文件名中的前導.
匹配為OS-dependent。
字符類可以包括 [A-Z]
等範圍:通過將 -
作為字符包含在類中的第一個或最後一個。 (範圍的解釋應該是locale-specific,因此該示例在愛沙尼亞語言環境中不是一個好主意。)
可以通過在 ?
、 *
和 [
前麵加上反斜杠來刪除它們的特殊含義(字符類內除外)。
值
匹配文件路徑的字符向量。該順序是係統特定的(但按照 paths
元素的順序):通常按當前語言環境或字節 (ASCII) 順序進行排序;但是,在 Windows 上,排序規則按照 Unicode 點的順序排列。
目錄錯誤通常會被忽略,因此匹配的是可訪問的文件路徑(但不一定是可訪問的文件)。
例子
Sys.glob(file.path(R.home(), "library", "*", "R", "*.rdx"))
也可以看看
Quotes 用於處理字符串中的反斜杠。
相關用法
- R Sys.getenv 獲取環境變量
- R Sys.getpid 獲取 R 會話的進程 ID
- R Sys.localeconv 查找當前語言環境中數字和貨幣表示形式的詳細信息
- R Sys.setFileTime 設置文件時間
- R Sys.info 提取係統和用戶信息
- R Sys.sleep 暫停執行一段時間
- R Sys.setenv 設置或取消設置環境變量
- R Sys.readlink 讀取文件符號鏈接
- R Sys.which 查找可執行文件的完整路徑
- R Sys.time 獲取當前日期和時間
- R Syntax 運算符語法和優先級
- R Startup R 會話開始時的初始化
- R Signals 中斷 R 的執行
- R Special 數學的特殊函數
- R S3method 注冊S3方法
- R file.path 構造文件路徑
- R grep 模式匹配和替換
- R getwd 獲取或設置工作目錄
- R vector 向量 - 創建、強製等
- R lapply 對列表或向量應用函數
- R dump R 對象的文本表示
- R rank 樣本排名
- R getDLLRegisteredRoutines DLL 中 C/Fortran 例程的反射信息
- R pushBack 將文本推回連接
- R strsplit 分割字符向量的元素
注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Wildcard Expansion on File Paths。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。