我GOOGLE了這一點,但我想不出爲什麼猛砸用下面的代碼抱怨,以檢查是否存在一個目錄:製作失敗檢查,如果目錄存在
test.mk
#!/bin/bash
MYDIR="dl"
all:
if [ ! -d $MYDIR ]; then
#if [ ! -d "${MYDIR}" ]; then
#if [ ! -d ${MYDIR} ]; then
#Here
fi
化妝-f test.mk
if [ ! -d YDIR ]; then
/bin/sh: Syntax error: end of file unexpected
make: *** [all] Error 2
有人知道它爲什麼會失敗嗎?爲什麼它會調用/ bin/sh而不是/ bin/bash?謝謝。編輯:與Bash不同,make不支持多行塊。這裏的工作代碼:
MYDIR="dl"
all:
if [ ! -d ${MYDIR} ]; then\
echo "Here";\
else\
echo "There";\
fi
'make'處理多行語句就好了。簡單地說就是在行的末尾。 – eriktous 2011-04-08 10:23:52
@eriktous感謝您的信息! – 2011-04-08 12:39:07