FOR /F %A in ('Dir Linkedin /A-D /s /b /o') do ECHO %~nxA %~pA. >>Paths.txt
FOR /F "tokens=1,2" %A in (Paths.txt) do SET Parent.%A=%~nB
Обратите внимание на дополнительные .
Путь, предоставленный модификатором ~p
, оканчивается на \
, поэтому добавление .
означает «само имя каталога, как если бы оно было именем файла»
в виде однострочной команды (внутри партии, оформленной стандартным palaver)
@ECHO OFF
SETLOCAL
FOR /F %%A in ('Dir test* /A-D /s /b /o') do FOR /F %%S in ("%%~pA.") do SET Parent.%%~nxA=%%~nS
set parent.
GOTO :EOF
Я использовал маску файла test*
, чтобы лучше соответствовать моей системе.
Не могу себе представить, что вы добровольно повторно вводите команду, поэтому показан формат для использования в командном файле.