Скопировать и переименовать файл, используя язык файлов .bat? - PullRequest
1 голос
/ 05 июня 2010

Я хочу создать .bat для копирования и переименования файла несколько раз.Я хочу иметь список имен и оригинальный файл, затем я хочу скопировать этот файл и переименовать его для каждого имени в списке.

Как я могу сделать это с помощью файла .bat?

Также возможно ли запускать winrar из .bat в .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, потому что это язык, который я знаю больше.

1 Ответ

3 голосов
/ 05 июня 2010

Должны ли имена файлов быть в списке строк?

Если вы можете назвать их в отдельном файле, например,

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

Это также позволяет изменять список имен целей без изменения командного файла.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...