我正在尝试使用 R 重命名几个文件,并且我已经尝试了所有能够找到类似问题的解决方案,但都没有成功。
我已经创建了一个带有我想要更改的文件名称的向量,以及另一个带有我想要将它们更改为名称的向量,因此它们看起来像:
from1 <- as.character(c("test1.txt", "test2.txt", "test3.txt"))
to1 <- as.character(c("testA.txt", "testB.txt", "testC.txt"))
Run Code Online (Sandbox Code Playgroud)
wherefrom1对应于我工作目录中现有文件的名称,并to1对应于我希望它们具有的名称。当我尝试file.rename(from1, to1),我得到[1] FALSE FALSE FALSE,即使我尝试它与向量的一个元素,如file.rename(from1[1], to1[1])我刚刚得到[1] FALSE并没有任何反应我的文件夹中
我也试过这个功能作为对一个与我非常相似的问题的答案发布的,它似乎有效,因为当我运行测试时,我得到
found 1 possible files
would change test1.txt to testA.txt
changed 0
Run Code Online (Sandbox Code Playgroud)
但是当我真正尝试这样做时,我得到了
found 1 possible files
changed 1
Run Code Online (Sandbox Code Playgroud)
但我的目录中实际上没有任何变化。
我不确定这个问题是否足够清楚或需要更多代码,如果是,请询问,我很乐意编辑。
目录中有一些.fcs文件,其格式为data.000X(其中X = 1,2,3 ...)。
我想将每个n个文件重命名为以下格式:exp.fcs(其中exp是矢量的文本)如果要重命名的文件是.fcs文件。
换句话说:我想将文件重命名为exp.txt,其中exp是文本,而不是连续的字母,例如F,cA,K等。
例如,来自:
data.0001, data.0002, data.0003, data.0004, data.0005, data.0006...
Run Code Online (Sandbox Code Playgroud)
至
textF_a.fcs, textF_b.fcs, textF_c.fcs, textVv_a.fcs, textVv_b.fcs, textVv_c.fcs ...
Run Code Online (Sandbox Code Playgroud)
我试图用file.rename(from,to)来做,但是失败了,因为参数的长度不同(我不知道这是什么意思):
a <- list.files(path = ".", pattern = "data.*$")
b <- paste("data", 1:1180, ".fcs", sep = "")
file.rename(a, b)
Run Code Online (Sandbox Code Playgroud)