我遇到以下问题:
我想从命令行运行ecd.exe
。
我已添加完整路径'路径'环境变量。
从命令行调用ecd.exe
时,我得到以下输出:
Error: ecd.exe should be located under the Eclipse home directory.
当我在命令行中添加完整路径时,此可执行文件正确运行。
我发现其他path
文件夹中存在相同的文件。
但是我无法在文件系统中的任何地方找到它。
如何在调用此可执行文件时找到命令行使用的路径?
答案 0 :(得分:2)
@ECHO OFF
SETLOCAL
SET "pathd=%cd%;%path%"
SET "pathd=%pathd:)=^)%"
FOR /f "delims=" %%a IN ('echo %pathd:;=^&ECHO %') DO IF EXIST "%%~a\j*.exe" ECHO %%~a
GOTO :EOF
这应该会找到路径上的J*.exe
个文件(因为我没有ecd.exe
) - 只需用ecd.exe
代替j*.exe
。
它将当前路径追加到由;
分隔的当前目录名,然后将结果字符串中的每个)
更改为^)
。
for
对连接的增强型路径字符串进行操作,方法是将;
替换为&echo
- 前一行)
之前的插入符号和{{1}在这一行"逃避"使角色&
忽视特殊含义并将其视为普通角色。
依次为每个cmd
目录提供%%a
;查看目录中是否存在文件(path
),如果找到该文件,则查看目录名j*.exe
。