Форум программистов, компьютерный форум, киберфорум
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/46: Рейтинг темы: голосов - 46, средняя оценка - 5.00
35 / 27 / 0
Регистрация: 11.10.2011
Сообщений: 380

Относительные пути

23.11.2011, 21:50. Показов 9805. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вот небольшой сценарий который просто архивирует каталоги из одной папки в другую с небольшим диалогом для пользователя. Все работает когда находится на обозначенных дисках типа е:\ с:\ но если запустить его на сетевом ресурсе типа \\postal\bbs\arj_pack.bat не работает. А почему ? и можно ли сделать что б работал ?

Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
@echo off
SET ARC=\\postal\BBS\Текос\AUTO_SEND\ARJ_PACK\EXE
for %%f in (.\1_Папка_для_архивации\*.*) do goto metka1
cls
echo ******************************************
echo *** Файлов для архивации в дирректории ***
echo ***       "1_Папка_для_архивации"      ***
echo ***            не обнаружено           ***
echo ******************************************
pause 
goto end11
:metka1
 
rem del /s .\2_Готовый_архив\*.*
cls
echo ****************************************
echo ***  Сейчас будет упаковано в архив, ***
echo ***      все содержимое каталога     ***
echo ***      "1_Папка_для_архивации"     ***
echo ****************************************
pause
 
cls
 
cd .\1_Папка_для_архивации\
%ARC%\arj32.exe m -r  .\XXXXXXXX.arj 
cd..
move .\1_Папка_для_архивации\*.arj .\2_Готовый_архив
cls
echo **********************************
echo ***  Архив с файлами находится ***
echo ***          в каталоге        ***
echo ***      "2_Готовый_архив"     ***
echo ***     не забудьте указать    ***
echo ***           имя архива       ***
echo **********************************
 
 
del /S /Q .\1_Папка_для_архивации\*.*
pause
 
:end11
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
23.11.2011, 21:50
Ответы с готовыми решениями:

Не работают относительные пути к файлам
@echo off title PrepareVersion setlocal set "dllPath=%~dp0..\bin\Release\ABCNET.dll" set...

Получить относительные пути в списке файлов
Доброго времени. Нарисовал для себя батник, основную задачу он выполняет, но результат для полного счастья приходится чуть допиливать....

Относительные пути
можно ли присвоить определенному пути переменную, что бы заменить ../../../../someFolder/someFile.html на ...

7
835 / 349 / 12
Регистрация: 04.10.2009
Сообщений: 589
23.11.2011, 22:36
CMD.exe не поддерживает пути UNC.
По умолчанию была выбрана системная папка windows.

Алгоритм надо менять.
1
35 / 27 / 0
Регистрация: 11.10.2011
Сообщений: 380
23.11.2011, 22:48  [ТС]
А как можно поменять алгоритм если пользователей много и у всех по разному подключено это расположение?????

Добавлено через 1 минуту
Или нужно отталкиваться относительно папки windows ??? на каждом компьютере?
0
835 / 349 / 12
Регистрация: 04.10.2009
Сообщений: 589
23.11.2011, 22:55
Можно указать arj полные пути но он воспринимает их только в 866 кодировке. Так что с русскими буквами папки лучше не делать.

Добавлено через 52 секунды
CD работать не будет и нужно везде указывать полные пути.
0
35 / 27 / 0
Регистрация: 11.10.2011
Сообщений: 380
23.11.2011, 22:57  [ТС]
Не пусть юзверы работают либо копируя на рабочий стол либо подключая сетевой диск ))) Спасибо.
0
835 / 349 / 12
Регистрация: 04.10.2009
Сообщений: 589
23.11.2011, 23:01
Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
SET ARC=\\postal\BBS\Текос\AUTO_SEND\ARJ_PACK\EXE
for %%f in (%~dp0.\1arj\*.*) do goto metka1
goto metka1
cls
echo ******************************************
echo *** Файлов для архивации в дирректории ***
echo ***       "1_Папка_для_архивации"      ***
echo ***            не обнаружено           ***
echo ******************************************
pause 
goto end11
:metka1
 
rem del /s %~dp0\2arj\*.*
cls
echo ****************************************
echo ***  Сейчас будет упаковано в архив, ***
echo ***      все содержимое каталога     ***
echo ***      "1_Папка_для_архивации"     ***
echo ****************************************
 
cls
%ARC%\arj32.exe m -r  %~dp02arj\XXXXXXXX.arj %~dp01arj\*.*
move %~dp01arj\*.arj %~dp02arj\
cls
echo **********************************
echo ***  Архив с файлами находится ***
echo ***          в каталоге        ***
echo ***      "2_Готовый_архив"     ***
echo ***     не забудьте указать    ***
echo ***           имя архива       ***
echo **********************************
 
 
del /S /Q %~dp01arj\*.*
pause
 
:end11
Добавлено через 2 минуты
.\ заменяем на %~dp0 только вот архиватор анси кодировку не воспринимает а так все то же самое почти.
0
35 / 27 / 0
Регистрация: 11.10.2011
Сообщений: 380
23.11.2011, 23:04  [ТС]
так чето не пойму как вот это теперь работает ?

for %%f in (%~dp0.\1arj\*.*) do goto metka1
????

Добавлено через 1 минуту
я понимаю что это как-то по хитрому прописан путь но не пойду как ?????
0
835 / 349 / 12
Регистрация: 04.10.2009
Сообщений: 589
24.11.2011, 06:37
чет ошибся
Windows Batch file
1
for %%f in (%~dp01arj\*.*) do goto metka1
надо писать
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.11.2011, 06:37
Помогаю со студенческими работами здесь

H2 относительные пути
Всем доброго времени суток! Я недавно сел разбираться с базой данных H2 и сразу же возник такой вопрос: Когда мы создаем базу,...

Относительные пути
Недавно столкнулся с такой записью пути файла: ..\..\..\..\..\..\WINDOWS\system32\SHELL32.dll Полный путь можно получить так: ...

Относительные пути
Есть структура сайта в корневой папке, создал папку Pages и перенёс туда .html файл, но запуская его, он не видит .css?!

Абсолютные и относительные пути
Здравствуйте, форумчане! В конфиге есть абсолютный и относительный пути до папки с изображениями. $config =...

FileSystemObject и относительные пути
Здравствуйте! вопрос в след. предположим я мне нужно обратится к файлу на чтение я объявляю новый объект fso = new...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru