删除 R 中的多个排序文件

标签 r file removeall

我创建了多个名为 1:100 + 随机字母的文件:

for (i in 1:100){
  file.create( paste0(i , ".txt"), showWarnings=TRUE)

  # assign random LETTER to files
  AZ <- sample(LETTERS,1)
  cat(AZ,file = paste0(i,".txt"),append=TRUE)

  #rename files, and create new file with append of LETTERS
  name <- scan(file=paste0(i,".txt"), what="character")
  file.rename(paste0(i,".txt"), paste0(i, name,".txt"))

现在,我有很多名为“1T、2C、3Y、...、100A”的文件,我想使用 file.remove 函数删除所有这些文件(不删除目录中的其余文件) ,如果不一一命名,该如何删除呢?以及所有名为“exercicio03”的目录以及里面的所有内容?

ps:我已经尝试过

     file.remove(paste0(i,name,".txt"))

但仅删除最后一个文件“100A”

最佳答案

您可以使用以下两行代码轻松仅删除名称类似于 "1T.txt, 2C.txt, 3Y.txt, ..., 100A.txt" 的文件:

remove.files <- list.files(".", pattern="^[0-9]{1,3}[A-Z]{1}\\.txt$")
do.call(file.remove,list(remove.files))

该脚本获取当前目录中创建这些文件的所有以 1-3 位数字开头、后跟字母的文本文件,并将其删除。

关于删除 R 中的多个排序文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29381863/

相关文章:

c# - LINQ:如何在不对数组使用 For 循环的情况下使用 RemoveAll

R错误: new columns would leave holes after existing columns; How to solve this?

r - 在 R 中使用 texi2dvi 生成 pdf 作为临时文件

r - 使用为多个图缩放的边距文本绘制?

java - 将文件另存为其他名称

linux - 如何在 bash 中按文件扩展名和大小对目录进行排序

c# - 读取包含不规则换行符的文件

magento - 如何从magento中完全删除自定义主题

java - 从列表中删除对象 - 包含字符串 - 比较列表

r - 从 stargazer 回归表输出中省略 float 和文档环境