在makefile中的命令之前添加反斜杠有什么影响?
例如this example中的\rm
命令?
答案 0 :(得分:1)
不需要它,但它不会伤害任何东西。食谱中的反斜杠(除非它们在行的末尾)并不令人感兴趣,因此它们只是传递给shell。 shell会看到反斜杠后面的下一个字符(r
)不是特殊字符,所以它只是忽略反斜杠。
通常人们在shell命令之前使用反斜杠,以确保不使用shell别名:反斜杠禁止别名查找:
$ alias foo='echo bar'
$ foo
bar
$ \foo
foo: command not found
但是,makefile中不需要这样做,因为make使用/bin/sh
作为非交互式shell来调用所有配方,因此这些别名通常都不可用。