Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
makefile中以反斜杠开头的命令_Makefile - Fatal编程技术网

makefile中以反斜杠开头的命令

makefile中以反斜杠开头的命令,makefile,Makefile,在makefile中的命令之前添加反斜杠有什么效果? 例如?中的\rm命令不需要它,但它不会造成任何伤害。食谱中的反斜杠(除非它们在行尾)制作起来并不有趣,所以它们只是传递给shell。shell将看到反斜杠(r)后面的下一个字符不是特殊字符,因此它将忽略反斜杠 通常,人们在shell命令之前使用反斜杠,以确保不使用shell别名:反斜杠禁止别名查找: $ alias foo='echo bar' $ foo bar $ \foo foo: command not found 但是,makef

在makefile中的命令之前添加反斜杠有什么效果?
例如?

中的
\rm
命令不需要它,但它不会造成任何伤害。食谱中的反斜杠(除非它们在行尾)制作起来并不有趣,所以它们只是传递给shell。shell将看到反斜杠(
r
)后面的下一个字符不是特殊字符,因此它将忽略反斜杠

通常,人们在shell命令之前使用反斜杠,以确保不使用shell别名:反斜杠禁止别名查找:

$ alias foo='echo bar'
$ foo
bar
$ \foo
foo: command not found

但是,makefiles中不需要这样做,因为make将使用
/bin/sh
作为非交互式shell调用所有配方,因此这些别名通常不可用。

反斜杠的效果可能取决于操作系统,但这看起来像是一个错误:应该有一个选项卡,而不是反斜杠。