This question already has an answer here:
How to fix Makefile syntax error when using wildcard on make clean?
(1 个回答)
6年前关闭。
我有一个
运行
相反,我收到以下错误:
我该如何解决?
(1 个回答)
6年前关闭。
我有一个
Makefile
如下:test:
rm -rf !(.git|folder1|folder2)
运行
make test
后,必须删除文件夹中的所有内容,除了 .git/
、 folder1/
和 folder2/
。相反,我收到以下错误:
/bin/bash: -c: line 0: syntax error near unexpected token `('
/bin/bash: -c: line 0: `rm -rf !(.git|folder1|folder2)'
make: *** [test] Error 2
我该如何解决?
最佳答案
!(...)
通配符语法仅在设置了 extglob
shell 选项 ( shopt -s extglob
) 时才有效。默认情况下不启用此选项。
另一种方法是:
find '(' -name .git -o -name folder1 -o -name folder2 ')' -prune -o -exec rm -rf {} \;
关于bash - 在 Makefile 中使用 "syntax error near unexpected token ` 时如何修复 ('" '!(...)'?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16158883/
10-16 04:32