Windows 脚本到 return 将目录名称与变量匹配

Windows script to return matching dir name to variable

大家 我想写一个 Windows 脚本到 grep 和 return python 目录名从 C:\ 到一个变量。它可能不止一个匹配。我可以知道我怎样才能做到这一点吗?

像这样尝试:

@echo off

setlocal enabledelayedexpansion

set $c=1
for /f "delims=" %%a in ('dir /ad /b c:\ ^| find /i "python"') do (
  set "##!$c!=%%a"
  set /a $c+=1
)

for /f "tokens=2 delims==" %%a in ('set ##') do echo Found --^> %%a

这将创建变量 ##1 到 ##x,其中包含 c:\ 中包含单词 python

的所有目录

建立PATH-like variable _python:

@ECHO OFF >NUL
SETLOCAL enableextensions enabledelayedexpansion
set "_python="
for /F "delims=" %%G in ('where /R c:\ python') do (
  set "_python=!_python!;%%~dpG"
  echo %%~nxG found in "%%~dpG" 
)
rem remove leading ;
if defined _python set "_python=%_python:~1%"
echo(
echo %_python%

资源(必读):