在RStudio中基于现有文件名部分内容批量重命名MacOS文件
批量重命名TIFF文件的R语言实现
以下是在RStudio中完成批量重命名的具体步骤,适配你描述的统一文件名格式:
步骤1:列出目标文件
你已经完成了这一步,代码如下:
# 获取当前目录下所有以MOD开头的TIFF文件 temp <- list.files(pattern="^MOD")
确认当前工作目录是存放TIFF文件的文件夹:可通过getwd()查看路径,若需切换目录使用setwd("/你的文件所在路径/")。
步骤2:生成新文件名
使用正则表达式提取文件名中的年份(YYYY)和年积日(DOY),构造DOY_YYYY_原文件名格式的新文件名:
# 批量生成符合要求的新文件名 new_names <- paste0(gsub(".*doy(\\d{4})(\\d{3}).*", "\\2_\\1_", temp), temp)
正则表达式说明:
.*doy:匹配文件名中doy之前的所有字符(\\d{4}):捕获4位数字的年份(作为第一匹配组)(\\d{3}):捕获3位数字的年积日(作为第二匹配组).*:匹配doyYYYYDOY之后的所有字符\\2_\\1_:将捕获的年积日和年份调换顺序,拼接成DOY_YYYY_的前缀
步骤3:验证新文件名(重要)
在执行重命名前,先打印新文件名确认格式正确:
# 查看生成的新文件名列表 print(new_names)
确认所有新文件名符合预期格式(例如049_2000_MOD13Q1.006__250m_16_days_EVI_doy2000049_aid0001.tif)后再进行下一步。
步骤4:执行批量重命名
确认无误后,执行重命名操作:
# 批量重命名文件 file.rename(from = temp, to = new_names)
该命令会将每个原文件重命名为对应的新文件名。
注意事项:
- 确保你对目标文件夹有写入权限(MacOS下通常默认具备,若遇权限问题可右键文件夹→「显示简介」调整权限)
- 由于新文件名带有唯一前缀,不会出现覆盖原有文件的情况
内容的提问来源于stack exchange,提问作者clari99
相关产品推荐
相关产品推荐

