R语言 文件及路径操作

1、文件查看

#列出当前工作目录下所有的文件和文件夹
list.files()

#列出当前工作目录下所有的文件,包含子目录文件
list.files(recursive = TRUE)

#列出当前工作目录下所有.R结尾的文件
list.files(pattern = "*.R")
dir(pattern = "*.R")

#列出当前工作目录下所有子目录,默认的recursive = TRUE
list.dirs()


2、路径操作

#在当前工作目录下创建文件夹testfolder
dir.create(file.path(getwd(), 'testfolder'))

#默认的recursive为FALSE,创建子目录失败
dir.create(file.path(getwd(), 'testfolder2', 'subfolder'))
#文件夹不存在返回FALSE dir.exists(file.path(getwd(), 'testfolder2', 'subfolder')) #设置recursive为TRUE,创建子目录 dir.create(file.path(getwd(), 'testfolder2', 'subfolder'), recursive = TRUE) #创建成功返回TRUE dir.exists(file.path(getwd(), 'testfolder2', 'subfolder'))

 

3、文件处理

#文件不存在则创建文件,存在则覆盖之前的文件
file.create('cretestfile.txt')
#判断文件是否存在,返回TRUE file.exists('cretestfile.txt')
#默认mode = 0判断文件是否存在,存在返回0 file.access('cretestfile.txt')
#删除文件cretestfile.txt,文件不存在会返回warning信息 file.remove('cretestfile.txt') #读取bin目录下所有文件及目录 d <- dir(file.path(R.home(), "bin"))
#读取bin目录下所有文件及目录(包含全路径) df <- dir(file.path(R.home(), "bin"), full.names = TRUE) #列出所有存在的文件 d[file.access(df, 0) == 0] #列出所有可执行文件 d[file.access(df, 1) == 0] #列出所有可写文件 d[file.access(df, 2) == 0] #列出所有可读文件 d[file.access(df, 4) == 0] #创建并写入数据到文件A.txt和B.txt cat("file A\n", file = "A.txt") cat("file B\n", file = "B.txt") cat("file C\n", file = "C.txt") #添加文件C.txt的内容到A.txt和B.txt file.append(c("A.txt", "B.txt"), "C.txt") #修改文件名C.txt为D.txt file.rename("C.txt", "D.txt") #复制D.txt中的内容10遍,添加到文件A.txt和B.txt各5次 file.append(c("A.txt", "B.txt"), rep("D.txt", 10)) #读取文件A.txt和B.txt的内容 file.show(c("A.txt", "B.txt")) #复制文件D.txt到C.txt file.copy("D.txt", "C.txt") #C.txt已存在,设置overwrite = TRUE进行覆盖 file.copy("D.txt", "C.txt", overwrite = TRUE) #新建tmp文件夹,并拷贝A.txt和B.txt到tmp文件夹下 dir.create("tmp") file.copy(c("A.txt", "B.txt"), "tmp") #删除tmp文件夹 unlink("tmp", recursive = TRUE) #删除文件 unlink(c("A.txt", "B.txt", "C.txt","D.txt"))

 





posted @ 2020-01-10 13:05  赏尔  阅读(12405)  评论(0编辑  收藏  举报