Создайте bat-файл в какой-нибудь удобной директории, а затем скопируйте+вставьте короткий путь из этого пути.
Вы можете просто запустить command.com
и продолжать выполнять команды cd
в вашем текущем каталоге.
В пакетных скриптах Windows %~s1
расширяет параметры пути до коротких имён . Создайте этот пакетный файл:
@ECHO OFF
echo %~s1
Я вызвал свой shortNamePath.cmd
и назвал его так:
C:\> shortNamePath "c:\Program Files (x86)\Android\android-sdk"
c:\PROGRA~2\Android\ANDROI~1
Вот версия, которая использует текущий каталог, если не был указан ни один параметр:
@ECHO OFF
if '%1'=='' (%0 .) else echo %~s1
Вызывается без параметров:
C:\Program Files (x86)\Android\android-sdk> shortNamePath
C:\PROGRA~2\Android\ANDROI~1
Использование SET
и именованной переменной
Командная строка Windows имеет несколько соглашений для работы с переменными с пробелами в их значениях, которые немного трудно изучить и понять, особенно если у вас есть Unix фон. You can do
SET TESTPATH=c:\Program Files (x86)\Android\android-sdk
(с кавычками no), или
SET "TESTPATH=c:\Program Files (x86)\Android\android-sdk"
(обратите внимание на неинтуитивное размещение кавычек); then
CALL :testargs "%TESTPATH%"
︙
:testargs
echo %~s1
goto :eof