Создайте файл 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.
Ты можешь сделать
SET TESTPATH=c:\Program Files (x86)\Android\android-sdk
(без кавычек) или
SET "TESTPATH=c:\Program Files (x86)\Android\android-sdk"
(обратите внимание на не интуитивное размещение цитат); затем
CALL :testargs "%TESTPATH%"
︙
:testargs
echo %~s1
goto :eof