Показать полную графическую версию : как копировать файлы из одной папки в другой через .bat
дело в том что в какую директорию человек установит программу я не знаю так что через Copy "d:\1\" "d:\2\" не пройдет
я знаю только что в папке программы будет такой путь cstrike/resources/background
ну а в ней еще папка с названием 1 (да просто имя папки "1")
как мне из cstrike/resources/background/1/ скопировать файлы в cstrike/resources/background (то есть на уровень ниже)
если не поняли то могу пересказать обычными словами
Khmel_19
16-09-2018, 21:00
используй xcopy
если не поняли то могу пересказать обычными словами »
despro, используйте знаки препинания и заглавные буквы в начале предложений для придания тексту смысла. Использовать же повсеместно полужирный шрифт нет никакой необходимости.
дело в том что в какую директорию человек установит программу я не знаю »
Какую программу?
Как правило, путь, куда установлено приложение, тем или иным образом сохраняется в реестре.
используй xcopy »
ну и? мне нужно файлы с изначальной папки скопировать на уровень ниже
Какую программу?
Как правило, путь, куда установлено приложение, тем или иным образом сохраняется в реестре »
Кс 1.6
видишь ли любой человек может установить игру в другой диск. Не именно как я на диск F допустим да диск D
тем самым команда copy "F:\Games\Counter-Strike Ultra Offensive\AutoPlay\Docs\cstrike\resource\background\1\файл.ехе" "F:\Games\Counter-Strike Ultra Offensive\AutoPlay\Docs\cstrike\resource\background\"
не сработает
т.к диск и локация установки другая
но директория cstrike\resource\background\1\ в любом случае останется
Кс 1.6 »
У меня его нет (и не будет). Значит, Вы сами — открываете редактор реестра, ищете раздел и параметр, куда записывается путь. Можете воспользоваться помощью Process Monitor'а.
Когда Вы точно определите раздел и наименование параметра, куда записывается путь — нам останется только извлечь его, сохранить в переменной окружения и использовать в команде copy/xcopy (…/robocopy :)).
У меня его нет (и не будет). Значит, Вы сами — открываете редактор реестра, ищете раздел и параметр, куда записывается путь. Можете воспользоваться помощью Process Monitor'а.
Когда Вы точно определите раздел и наименование параметра, куда записывается путь — нам останется только извлечь его, сохранить в переменной окружения и использовать в команде copy/xcopy (…/robocopy ). »
да не вы не поняли
вот допустим я создаю батник в папке cstrike. батник сможет определить что в этой папке (cstrike ) есть папка background?
чтобы дальше работать с ней
вот допустим я создаю батник в папке cstrike. батник сможет определить что в этой папке (cstrike ) есть папка background?
чтобы дальше работать с ней »
Да, может. Относительно местоположения самого пакетного файла — может. Например:
@echo off
setlocal enableextensions enabledelayedexpansion
if exist "%~dp0background\." (
echo Found folder [background].
) else (
echo Not found folder [background].
)
endlocal
exit /b 0
Да, может »
Да, может »
а так чтобы изъять оттуда файл и скопировать его на наш ниже(из backroud обратно в cstrike)
Примерно так:
@echo off
setlocal enableextensions enabledelayedexpansion
if exist "%~dp0background\." (
if exist "%~dp0background\файл" (
>nul copy "%~dp0background\файл" "%~dp0"
) else (
echo Can't find file [%~dp0background\файл].
)
) else (
echo Can't find folder [%~dp0background].
)
endlocal
exit /b 0
или, более прагматично, так:
@echo off
setlocal enableextensions enabledelayedexpansion
set sSourceFolder=background
set sSourceFile=файл
if exist "%~dp0%sSourceFolder%\." (
if exist "%~dp0%sSourceFolder%\%sSourceFile%" (
>nul copy "%~dp0%sSourceFolder%\%sSourceFile%" "%~dp0"
) else (
echo Can't find source file [%~dp0%sSourceFolder%\%sSourceFile%].
)
) else (
echo Can't find source folder [%~dp0%sSourceFolder%].
)
endlocal
exit /b 0
Да, может. Относительно местоположения самого пакетного файла — может. »
Можно и все диски перелопатить на предмет наличия... если очень надо, конечно. :)
Список дисков, через тот же wmi, получить не особо сложно:
wmic logicaldisk where drivetype=3 get name /value|find "="
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.