powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Windows [игнор отключен] [закрыт для гостей] / Получение реального (не symlink) текущего пути в теле bat-файла
6 сообщений из 6, страница 1 из 1
Получение реального (не symlink) текущего пути в теле bat-файла
    #39696675
NETClient
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть каталог, в котором лежит файлик run.bat. В теле этого файла есть обращение к %~dp0 для получения текущего пути. Файл запускается в cmd-консоли. На этот каталог создан symlink.
Так вот если до этого каталога добраться разными путями (через symlink или по реальному пути) эта штука выдает в первом случае путь symlink, во втором - реальный путь.
Вопрос: как сделать так, чтобы в теле файла всегда возвращался реальный путь, без symlink.
...
Рейтинг: 0 / 0
Получение реального (не symlink) текущего пути в теле bat-файла
    #39697066
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гм... а зачем, если не секрет? При каких условиях в батч-процессинге это может повлиять на исполнение?
...
Рейтинг: 0 / 0
Получение реального (не symlink) текущего пути в теле bat-файла
    #39697074
Фотография eNose
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[не активирован]
[не одобрен]
DIR /A
...
Рейтинг: 0 / 0
Получение реального (не symlink) текущего пути в теле bat-файла
    #39697117
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
eNose , и в чём разница?
...
Рейтинг: 0 / 0
Получение реального (не symlink) текущего пути в теле bat-файла
    #39697131
Фотография eNose
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[не активирован]
[не одобрен]
Akina eNose , и в чём разница? для симлинков выдаст реальный путь.
В батнике при желании можно разобрать.
...
Рейтинг: 0 / 0
Получение реального (не symlink) текущего пути в теле bat-файла
    #39697179
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
eNoseдля симлинков выдаст реальный путь.? не понимаю, давай уточним, что имеется в виду.

Есть некий каталог (скажем \tmp). В корневом каталоге кроме него на него есть симлинк, скажем tmp1. Из корня команды cd tmp и cd tmp1 приведут в одну и ту же точку. При каком текущем каталоге DIR /A выдаст реальный путь для симлинка?

Само собой речь не ведём о листинге корневого каталога и записи в нём элемента с именем tmp1 и типом <SYMLINKD> - это и без всяких вывертов было видно.

eNoseВ батнике при желании можно разобрать.
Ну да... схематично что-то типа dir /b .. | find "%~p0" | find "<SYMLINKD>" (ну, правда, %~p0 придётся урезать до чисто каталога последнего уровня, что тоже нетривиально) и далее errorlevel, а если ноль - выкусываем то, что меж квадратных скобок.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Windows [игнор отключен] [закрыт для гостей] / Получение реального (не symlink) текущего пути в теле bat-файла
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]