Bat файл на поиск файл
Помогите создать Bat файл на поиск файл на всем пк,его удаление и копирование на его места другого
|
А я думал что "файл" склоняется.
если правильно понял условие, то как-то так.
Код:
@echo off
for /d %%p in (c d e f) do (forfiles /s /p %%p:\ /m abracadabra.tst /c "cmd /c xcopy /y orderliness.tst @path")
где c d e f - локальные диски
abracadabra.tst - файл который ищем и удаляем
orderliness.tst - файл который подсовываем вместо удаленного
|
Да все правильно,а как сделать без указания локальных дисков,к примеру если я не знаю как называются локальные диски на пк,может вместо D будет G и так далее
И вот насчет подсовывания,не вижу где указывается путь откуда будет копироваться файл или это /m?
|
путь куда будет копироваться это @path (см. forfile /?)
если нужно искать на всех локальных дисках можно просто перечислить все от С: до Z: и все, те которые отсутствуют будут просто пропущены.
|
Цитата:
Цитата Elven
путь куда будет копироваться это @path (см. forfile /?) »
|
не куда а откуда
|
Не получается,он не удаляет найденный файл и не копирует другой
|
он копирует другой файл с тем именем которое было у удаленного файла. ставьте задачу конкретнее если есть желание чтобы ее решали.
|
Цитата:
Цитата Elven
он копирует другой файл с тем именем которое было у удаленного файла. ставьте задачу конкретнее если есть желание чтобы ее решали. »
|
Да я понял,разобрался,такой вопрос,как подставляемый файл сделать с другим расширением к примеру вот он ищет abracadabra.tst удаляет его и на его место ставит orderliness.tst только меняет имя на тот файл который был удален как сделать так,что бы он искал abracadabra.tst удалял,но вместо него подставлял к пример abracadabra.tst.fxp т.е опять же копировал orderliness.tst только когда переименовывал ставил расширение нужное мне,а не такое как у удаляемого файла.Спасибо.
|
Да и еще он не удаляет и не заменяет,если все 3 файла не находятся в 1 папке
|
В папке с батником должен находится только orderliness.tst если он находится в другой папке - указать путь к ней.
Код:
@echo off
for /d %%p in (c d e f) do (forfiles /s /p %%p:\ /m abracadabra.tst /c "cmd /c xcopy /y d:\orderliness.tst @path && ren @path orderliness.tst")
|
Цитата:
Цитата Elven
В папке с батником должен находится только orderliness.tst если он находится в другой папке - указать путь к ней. »
|
Они находилисьв папке с батником.
Все работает Да и насчет этого вопроса еще не подскажите?
Цитата:
Цитата Gisender
Да я понял,разобрался,такой вопрос,как подставляемый файл сделать с другим расширением к примеру вот он ищет abracadabra.tst удаляет его и на его место ставит orderliness.tst только меняет имя на тот файл который был удален как сделать так,что бы он искал abracadabra.tst удалял,но вместо него подставлял к пример abracadabra.tst.fxp т.е опять же копировал orderliness.tst только когда переименовывал ставил расширение нужное мне,а не такое как у удаляемого файла.Спасибо. »
|
|
Цитата:
Цитата Elven
Код:
@echo off
for /d %%p in (c d e f) do (forfiles /s /p %%p:\ /m abracadabra.tst /c "cmd /c xcopy /y d:\orderliness.tst @path && ren @path orderliness.tst")
»
|
|
Время: 19:19.
© OSzone.net 2001-