Показать полную графическую версию : [решено] Как заставить скрипт переместится на каталог ниже?
Пишу для себя небольшой скрипт, нужно копировать файл в каталог на уровень ниже, а за тем выше, не по прямому пути.
К примеру: можно копировать в каталог выше:
copy papka1\settings.xml papka2\papka3Но никак не могу найти как опустится ниже, возможно, потому что неправильно задаю вопрос.
пе.ес. чайник.
r11x, выполните «tree» в каталоге со скриптом, вывод скопируйте сюда и укажите в выводе на конечный каталог. Ибо пока то, что Вы описали:
копировать файл в каталог на уровень ниже, а за тем выше »
— есть тот же самый каталог.
возможно, потому что неправильно задаю вопрос. »
Да.
Можете просто привести конкретный пример.
возможно, потому что неправильно задаю вопрос »
у меня складывается впечатление, что вы путаете выше и ниже:
К примеру: можно копировать в каталог выше:
Код:
copy papka1\settings.xml papka2\papka3 »
наоборот, скопирует в нижележащий подкаталог
синоним родительского (вышестоящего) каталога - две точки:
copy papka1\settings.xml ..\
можно писать так:
copy papka1\settings.xml ..\..\
самый верхний (корневой) каталог - просто обратный слэш:
copy papka1\settings.xml \
Задавая подобные вопросы по форумам вы свой небольшой скрипт будете месяц писать - лучше почитайте какую-нибудь книгу. Получите более полную картину в последовательном изложении.
r11x,
можно еще так
например структура папок:
Структура папок
C:\PAPKA1
│ file.txt
│ name.bat
│
└───papka2
│ file.txt
│ name.bat
│
└───papka3
│ file.txt
│ name.bat
│
└───papka4
Запустив такой код можно увидеть как получить и попасть на один уровень выше или ниже месторасположения bat:
@echo off
setlocal enabledelayedexpansion
set "uv=%~dp0.."
for /f "tokens=* delims=\" %%a in ('dir /ad/b/s "."') do set "sp=%%a"
for /f "delims=\" %%a in ("!sp:%~dp0=!") do set "un=%~dp0%%a"
echo -----------------------------------------------------
echo Содержимое папки уровнем выше "%~f0":
echo [dir /b "%uv%"]
dir /b "%uv%"
echo -----------------------------------------------------
echo Содержимое папки уровнем ниже "%~f0":
echo [dir /b "%un%"]
dir /b "%un%"
echo -----------------------------------------------------
pause
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.