【发布时间】:2021-03-14 18:33:48
【问题描述】:
我在我的 makefile 中这样做是为了尝试获取 Java 的 PATH,但是 find 的结果字符串没有正确转义以在 bash 中使用,我如何让 find 将转义的路径返回给 java。可执行文件?
JAVA_EXE := "$(shell find /c/Program\ Files\ \(x86\)/Java/ -type f -name 'java.exe' -print0 -quit)"
JAVA_PATH := $(dir $(JAVA_EXE))
【问题讨论】:
-
您确定需要将其转义吗?您可以直接写入名为
PATH的makefile 变量,然后执行export PATH将其转换为环境变量。 -
JAVA_EXE 包含未转义且可用于执行的文件的位置,但我需要文件的路径而不是文件本身
-
我明白了,但是您打算如何处理路径?是否要将其添加到
PATH变量中? -
是的,对于路径,但我需要两个不同的变量。一个用于可执行文件,另一个用于添加到路径
-
那么我的第一条评论适用。您可能不需要将其转义即可将其添加到
PATH。