如果我做
*.c
它将返回以 结尾的文件列表,.c
以空格分隔。但是,我希望它返回一个文件列表,前缀#include "
为"\n
.
例如输出
#include "blah.c"
#include "meh.c"
#include "hehe.c"
gcc -xc -
如果命令是单行的,我想将这个结果转化为额外的积分。
(不,我不想仅仅cat *.c
因为它会丢失源位置信息)
有一个更简单的方法:
printf '#include "%s"\n' *.c
也许像
for f in *.c ; do
printf '#include "%s"\n' $f
done | gcc -xc -
应该做你想做的
但是,gcc
接受多个源文件,所以你可以这样做
gcc -Wall *.c -o yourprog -lyourlibrary
你也可以传递-g -O -flto
给gcc
我没有对此进行测试,但这可能会做到
对于 *.c 中的 a ;做 echo '#include "'$a'"' ; 完成 | gcc -xc -