如何在 make 中形成一个合适的 if else 来寻找用户?
How to form a proper if else in make to find user?
我是新手,想了解更多关于条件的知识。
我想在 makefile 中检查 whoami 的结果,但总是出错
ifeq ($(whoami), "John")
echo "PC"
else
echo "Server"
endif
这里它在 echo "Server" 行给我一个错误,说 *** missing separator 我该如何解决?
你会想要这样的东西:
#!/bin/bash
if [[ $(whoami) == "John" ]]; then
echo "PC"
else
echo "Server"
fi
如 Primitive 所述,bash 不使用 ifeq
和 endif
。
编辑
根据 chepner 的评论,这个问题可能是关于 Make 而不是 Bash,在这种情况下,这应该有效:
SHELL = /bin/sh
USER = $(shell whoami)
buildbegin:
ifeq ($(USER), John)
@echo PC
else
@echo Server
endif
可以用make -f $MakeFile
进行测试
我是新手,想了解更多关于条件的知识。
我想在 makefile 中检查 whoami 的结果,但总是出错
ifeq ($(whoami), "John")
echo "PC"
else
echo "Server"
endif
这里它在 echo "Server" 行给我一个错误,说 *** missing separator 我该如何解决?
你会想要这样的东西:
#!/bin/bash
if [[ $(whoami) == "John" ]]; then
echo "PC"
else
echo "Server"
fi
如 Primitive 所述,bash 不使用 ifeq
和 endif
。
编辑
根据 chepner 的评论,这个问题可能是关于 Make 而不是 Bash,在这种情况下,这应该有效:
SHELL = /bin/sh
USER = $(shell whoami)
buildbegin:
ifeq ($(USER), John)
@echo PC
else
@echo Server
endif
可以用make -f $MakeFile