最近我在 Linux 中使用终端编写了更多代码,以更深入地了解编程。现在我正在尝试使用以下命令自动化编译过程:
find . -type f -mmin -1 -name "*.c" | gcc -o output.o -xc -
它基本上应该找到带有结尾的最新修改文件"*.c"
并编译它。但是我总是收到以下错误:
<stdin>:1:1: error: expected identifier or ‘(’ before ‘.’ token
任何人都可以帮助我并解释我做错了什么或告诉我一个替代方案吗?
非常感谢您,祝您有愉快的一天!
您正在将文件的名称作为要编译的代码
gcc
您可以将名称作为文件参数传递,而不是使用
xargs
:然而,这项工作的“正确”工具确实是
make
——它将确定哪些目标比它们的先决条件旧,并根据需要编译它们。