Создайте файл 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