files2
位於 base
包(package)。 說明
這些函數為計算機文件係統提供了低級接口。
用法
dir.exists(paths)
dir.create(path, showWarnings = TRUE, recursive = FALSE, mode = "0777")
Sys.chmod(paths, mode = "0777", use_umask = TRUE)
Sys.umask(mode = NA)
參數
path |
包含單個路徑名的字符向量。波形符擴展(參見 |
paths |
包含文件或目錄路徑的字符向量。波形符擴展(參見 |
showWarnings |
邏輯性;是否應該顯示失敗警告? |
recursive |
合乎邏輯的。是否應該創建除最後一個之外的路徑元素?如果為 true,則類似於 Unix 命令 |
mode |
在 Unix-alikes 上使用的模式:它將被 |
use_umask |
邏輯:模式是否應該受 |
細節
dir.exists
檢查路徑是否存在(與 file.exists
含義相同)並且是目錄。
dir.create
創建路徑的最後一個元素,除非 recursive = TRUE
。尾隨路徑分隔符將被丟棄。該模式將通過umask
設置進行修改,方式與係統函數mkdir
相同。可以設置的模式是OS-dependent,假設使用超過三個八進製數字是不安全的。有關更多詳細信息,請參閱有關係統調用 mkdir
的操作係統文檔,例如man 2 mkdir
(而不是在該名稱的命令行實用程序上)。
Windows 的特性之一是目錄創建可能會報告成功,但會創建一個具有不同名稱的目錄,例如dir.create("G.S.")
創建‘"G.S"’。這是沒有記錄的,並且確切的情況未知(並且可能取決於 Windows 的版本)。還要避免目錄名稱尾隨空格。
Sys.chmod
設置一個或多個文件的文件權限。係統可能不支持它(當發出警告時)。有關如何解釋模式的信息,請參閱 dir.create
的注釋。更改符號鏈接的模式不太可能起作用(也沒有必要)。有關更多詳細信息,請參閱有關係統調用 chmod
的操作係統文檔,例如man 2 chmod
(而不是該名稱的命令行實用程序上的)。這是否會更改符號鏈接或其目標的權限是OS-dependent(盡管更改目標更為常見,並且 POSIX 不支持符號鏈接模式:但基於 BSD 的 Unix 則支持)。
Sys.umask
設置 umask
並返回先前的值:作為特殊情況,mode = NA
僅返回當前值。它可能不受支持(當發出警告並返回"0"
時)。有關更多詳細信息,請參閱有關係統調用 umask
的操作係統文檔,例如man 2 umask
。
如何處理模式取決於文件係統,甚至取決於 Unix 類係統(盡管它們的文檔通常是假設 POSIX 文件係統編寫的)。因此,如果您使用的是 FAT/FAT32 或 network-mounted 文件係統,請謹慎對待文檔。
請參閱files 了解如何解釋帶有標記編碼的文件路徑。
值
dir.exists
返回 TRUE
或 FALSE
值(不帶名稱)的邏輯向量。
dir.create
和 Sys.chmod
不可見地返回一個邏輯向量,指示嘗試的每個文件的操作是否成功。使用缺失值作為路徑名將始終被視為失敗。如果目錄已存在,dir.create
表示失敗。如果 showWarnings = TRUE
、 dir.create
將對意外失敗發出警告(例如,不會針對缺失值或 recursive = TRUE
的現有組件發出警告)。
Sys.umask
返回 umask
的先前值,作為類 "octmode"
的長度為 1 的對象:可見性標誌關閉,除非 mode
是 NA
。
另請參閱幫助中有關不區分大小寫的文件係統的 file.exists
的部分,以了解 path
和 paths
的解釋。
例子
## Not run:
## Fix up maximal allowed permissions in a file tree
Sys.chmod(list.dirs("."), "777")
f <- list.files(".", all.files = TRUE, full.names = TRUE, recursive = TRUE)
Sys.chmod(f, (file.mode(f) | "664"))
## End(Not run)
作者
Ross Ihaka, Brian Ripley
也可以看看
file.info
、file.exists
、file.path
、list.files
、unlink
、basename
、path.expand
。
相關用法
- R files 文件操作
- R file.path 構造文件路徑
- R file.info 提取文件信息
- R file.show 顯示一個或多個文本文件
- R file.access 確定文件的可訪問性
- R file.choose 交互式選擇文件
- R findInterval 查找區間數或索引
- R find.package 查找套餐
- R formals 訪問和操縱形式參數
- R funprog 函數式編程語言中常見的高階函數
- R formatDL 格式說明列表
- R force 強製評估論證
- R format 以通用格式編碼
- R factor 因子
- R function 函數定義
- R formatC 使用 C 樣式格式進行格式化
- R format.pval 設置 P 值格式
- R forceAndCall 調用帶有強製參數的函數
- R format.info 格式(.)信息
- R grep 模式匹配和替換
- R getwd 獲取或設置工作目錄
- R vector 向量 - 創建、強製等
- R lapply 對列表或向量應用函數
- R dump R 對象的文本表示
- R Sys.getenv 獲取環境變量
注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Manipulation of Directories and File Permissions。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。