我想制作.bat来复制&多次重命名文件。我想要一个名单列表和一个原始文件,然后我想复制该文件并为列表中的每个名称重命名。
如何使用.bat文件执行此操作?
还可以在复制/重命名后从.bat运行winrar到.rar或.zip每个文件吗?
示例:
$file = "file.tmpl";
$names = "name1, name2, name3, nameetc";
foreach( $names as $name) {
copy $file; //to avoid deleting the original
rename $file to $name;
zip $name; //I dont really need this but if its easy to do i will like to use it
}
所以我从file.tmpl开始,最后我得到了另外4个文件(它们是file.tmpl的副本),名为name1,name2,name3,nameetc。
这个例子不是一个真正的编码语言,我使用了一种php sintax因为我知道的语言更多。
答案 0 :(得分:3)
文件名是否需要在字符串列表中?
如果您可以在单独的文件中命名,
name-one.pdf
name-two.pdf
name-three.pdf
然后这个批处理文件将起作用
SET source_file=%1
SET name_list_file=%2
FOR /F "usebackq delims=," %%G IN (`TYPE %name_list_file%`) DO (
COPY %source_file% %%G
)
你会这样称呼它
batch-file-name source-file-name name-list-file
换句话说,我调用了批处理文件make-copies.bat
和名称文件filenames.txt
,我用它来复制名为mla-play.pdf
的文件。
make-copies mla-play.pdf filenames.txt
这也允许您在不修改批处理文件的情况下更改目标名称列表。
希望这有帮助。