use*_*216 3 shell makefile variable-expansion
我正在写一个makefile,并假设我有以下内容;
FILES = file1.py \
folder1/file2.py \
folder2/file3.py
Run Code Online (Sandbox Code Playgroud)
我有以下for循环:
-@for file in $(FILES); do \
echo $${file/folder1\/}; \
done
Run Code Online (Sandbox Code Playgroud)
以上将打印:
file1.py
file2.py
folder2/file3.py
Run Code Online (Sandbox Code Playgroud)
我想要的输出是:
file1.py
file2.py
file3.py
Run Code Online (Sandbox Code Playgroud)
我查看了一些关于shell扩展的文档,但还没有找到解决这个问题的方法.我可以知道如何更改代码以获得正确的输出吗?任何帮助将非常感谢.
编辑:语法
你已经接受了@Jens的shell风格的答案,但我会建议一个make风格的解决方案:
-@for file in $(notdir $(FILES)); do \
echo $${file}; \
done
Run Code Online (Sandbox Code Playgroud)