Batch file forfiles/for cmd中的长文件名

Batch file forfiles/for cmd中的长文件名,batch-file,cmd,Batch File,Cmd,我的脚本有一个长文件名问题 它一直剪切到“c:\Program” 谢谢 SET directoryToSearch="C:\Program Files (x86)\Adobe\Acrobat Reader DC\Reader" SET r1="" for /f %%F in ('FORFILES /S /P %directoryToSearch% /M "ac*.exe" /C "cmd /c echo @path"') do set r1=%%F echo %r1% 对于文件,您不需要使用,

我的脚本有一个长文件名问题

它一直剪切到“c:\Program”

谢谢

SET directoryToSearch="C:\Program Files (x86)\Adobe\Acrobat Reader DC\Reader"
SET r1=""
for /f %%F in ('FORFILES /S /P %directoryToSearch% /M "ac*.exe" /C "cmd /c echo @path"') do set r1=%%F
echo %r1%

对于文件,您不需要使用
对于
,您可以自己使用它:

SET "directoryToSearch=C:\Program Files (x86)\Adobe\Acrobat Reader DC\Reader"
SET "r1="
for /r "%directoryToSearch%" %%F in (ac*.exe) do set "r1=%%F"
echo %r1%

注意:最佳做法是在变量值中不包含引号,而是在需要时引用。请参阅更改的(首选)
set
语法(请注意引号所在的位置)

对于文件
,您不需要
对于
,您可以自己对其进行修改:

SET "directoryToSearch=C:\Program Files (x86)\Adobe\Acrobat Reader DC\Reader"
SET "r1="
for /r "%directoryToSearch%" %%F in (ac*.exe) do set "r1=%%F"
echo %r1%
注意:最佳做法是在变量值中不包含引号,而是在需要时引用。请参阅更改的(首选)
set
语法(注意引号所在的位置)