我想写一个R语言的算法,它允许我重命名文件。我想通过数字1,2,3,4,5 ...重命名文件夹中的所有pdf文件并保留pdf扩展名。 主要困难如下:我的文件夹包含文件和文件夹,这些文件夹包含文件和文件夹等....我希望所有这些子文件夹中的所有pdf文件都以数字开头的1开头,文件在这个特定的文件夹(例如下面的字母顺序)!另一个难点:我的文件夹也包含非PDF文件!R,重命名文件迭代
下面是一个例子:(在下面的示例文件夹1中包含文件夹2和3个文件夹2包含4个文件中。)
Folder1 "contains" folder2 "contains" Bzzz.file.R
A.file.txt B.file.pdf
Bla.file.pdf C.file.pdf
C.file.pdf Delta.file.pdf
...应该是转换为这个....
Folder1 "contains" folder2 "contains" Bzzz.file.R
A.file.txt 1.pdf
1.pdf 2.pdf
2.pdf 3.pdf
的算法应该是工作无论是文件夹的数量“并有多深的文件夹开始”
如果这会工作,即使当t这里已经有一些叫做3.pdf或其他number.pdf的文件,它会稍微好一些,但是我实际上可以在没有这种灵活性的情况下进行处理!
非常感谢您的帮助!
我跑这个代码,但它不完全工作。如果我只是运行它,我得到这个错误消息:“错误在if(is.na(路径名)){:参数的长度为零”(我不得不从法语翻译这个错误消息,所以可能有一些错配错误消息,我们可以从R中获得英文版)。
然后我意识到d很奇怪,因为它包含一个名为“。”的目录。在我的文件夹中没有的第一个位置(您是否对此有解释?!)。
所以我也ð< -d [-1],然后重新运行大lapply我收到此错误信息:
“错误setwd(d [X]):不可能改变工作目录” 的确在第一个文件夹中的文件被重命名,但只在第一个文件夹
这里什么list.dirs()给出:
“” “./3.Sept”“./4.Oct”“./5.Nov”“./6.Dec”
但是我只有4个文件夹。没有名为“。”的文件夹。 !正如我所说,如果我做d < -d [-1]该代码是不是成功在更改目录,以便只有一个文件夹重命名
在一个给定的文件夹中,我想重命名所有的pdf文件,无论它们的当前名称是什么。如果在这个文件夹中有3个pdf文件,它们将被重命名为1.pdf,2.pdf和3.pdf。我不想重命名非pdf文件。问题是我的文件夹包含其他文件夹,其中包含文件和文件夹等。我希望在这些文件夹中的任何一个文件夹中重新命名pdf文件,而不必重命名已在其他文件夹中完成的文件。 在我的示例中,我添加了非PDF文件,以表明它们不应该重命名。 – 2013-03-20 15:59:39