编辑bash命令gcc以在一行中编译和执行

时间:2014-11-21 14:57:40

标签: c macos bash gcc

我想知道这是否可行:

如果你放gcc filename.c,你将在filename.c文件中编译a.out 如果你放./a.out,你将执行该文件。

复合版本

gcc filename.c && ./a.out

我希望在bash_profile中编辑此命令,以便在一个简短的命令行中执行此操作。

gcc filename.c执行此操作gcc filename.c && ./a.out

1 个答案:

答案 0 :(得分:1)

您可以声明一个函数:

gccrun () {
    gcc "$1" && ./a.out
}

但是要小心:如果有人使用C文件的完整路径作为参数怎么办?

Makefiles通常用于这种东西。

a.out: file.c
    gcc $<

run: a.out
    ./a.out

make run如果源代码自上次编译后发生更改或不存在,则会运行a.out重新编译它。