makefile中的命令以反斜杠开头

时间:2017-03-08 01:04:20

标签: makefile

在makefile中的命令之前添加反斜杠有什么影响? 例如this example中的\rm命令?

1 个答案:

答案 0 :(得分:1)

不需要它,但它不会伤害任何东西。食谱中的反斜杠(除非它们在行的末尾)并不令人感兴趣,因此它们只是传递给shell。 shell会看到反斜杠后面的下一个字符(r)不是特殊字符,所以它只是忽略反斜杠。

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

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

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