1

我想制作一个 .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,因为它是我了解更多的语言。

4

1 回答 1

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

这也允许您在不修改批处理文件的情况下更改目标名称列表。

希望这可以帮助。

于 2010-06-05T17:25:38.450 回答