我正在使用bash编写makefile,有一个目标需要查找文件是否存在,尽管我认为语法是正确的,但仍然出现错误。
以下是我正在尝试运行的脚本:
read:
if [ -e testFile] ; then \
cat testFile\
fi
我正在使用选项卡,所以这不是问题。错误是(当我输入“make read”时)。
if [ -e testFile] ; then \
cat testFile \
fi
/bin/sh: Syntax error: end of file unexpected (expecting "fi")
make: *** [read] Error 2
bash
语句,但是遇到了相同的失败情况 - 正如这个答案所指出的那样,诀窍在于让Makefile将shell命令识别为单行;因此,我需要使用分号;
(用于分隔shell命令)和反斜杠\\
(用于转义后续的换行符),以使其正常工作...干杯! - sdaau