有没有办法在CMD中找出命令的图像路径?

时间:2015-12-13 15:51:41

标签: java cmd command

有时当我在CMD中键入命令时,它会抛出一个错误,例如。 enter image description here

我的计算机中有这么多版本的java。(并非所有版本都由我自己安装,某些软件的目录将包含一个小的java。)

我知道问题的主要原因是错误的PATH环境,但PATH环境包含这么多目录,(是的,我可以通过逐个排除它来找出错误。)但我只是想知道如果有办法找出命令的图像路径?

1 个答案:

答案 0 :(得分:1)

@ECHO Off
SETLOCAL
SET "tempfilename=%temp%\temp###.###"
(CALL :getpath)>"%tempfilename%"
FOR /f "usebackqdelims=" %%a IN ("%tempfilename%") DO (
 IF NOT EXIST "%%~a\." (ECHO "%%~a" IN PATH but missing) ELSE (
  FOR %%b IN (java.exe java.dll) DO IF EXIST "%%~a\%%b" (
   FOR %%c IN ("%%~a\%%b") DO (ECHO %%~c IN PATH dated %%~tc %%~zc bytes)
  )
 )
)
DEL "%tempfilename%" 2>nul
GOTO :EOF

:getpath
ECHO .
ECHO %path:;=&ECHO(%
GOTO :EOF

这应该可以通过path找到可以访问java.exe和java.dll的实例。

它将路径与.一起列入临时文件,然后将该文件用作目录列表以搜索目标文件。

如果找到任何内容,则会显示找到的文件的大小,日期和位置。

如果"尺寸"为零,然后找到的目标可能是一个符号链接。