小编Pat*_*the的帖子

bash/debian:奇怪的 makefile 行为

我在 TeX 中使用了一个非常简单的 makefile:

test-makefile:
    echo '\newcommand{\seance}{seance1}' > seances/seance.tex
Run Code Online (Sandbox Code Playgroud)

我运行它:

$ make test-makefile 
echo '\newcommand{\seance}{seance1}' > seances/seance.tex
Run Code Online (Sandbox Code Playgroud)

我的问题是在名为“seances”的文件夹中创建的文件不包含它应该包含的前两个字符:

?
ewcommand{\seance}{seance1}
Run Code Online (Sandbox Code Playgroud)

它的第一行是空的。

当然我可以保护第一个 antislash:echo '\\newcommand{\seance}{seance1}等。但在现实世界中它不起作用:我真正的 makefile(我已经发布了一个 ECM)不起作用。

发生什么了?bash/debian 如何误解命令的开头?



顺便一提:

$ bash --version
GNU bash, version 4.4.19(1)-release (x86_64-pc-linux-gnu)
?
$ cat /etc/debian_version
buster/sid
?
$ uname -a
Linux giljourdan 4.16.0-1-amd64 #1 SMP Debian 4.16.5-1 (2018-04-29) x86_64 GNU/Linux
Run Code Online (Sandbox Code Playgroud)

make

6
推荐指数
1
解决办法
258
查看次数

标签 统计

make ×1