gpt4 book ai didi

c - Bash 一个 liner 来编译、执行和回显返回值?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:39:41 26 4
gpt4 key购买 nike

我不是 bash 高手,所以请原谅这个问题的简单性。

我想在 Linux shell 中的一行中编译、执行和回显我的程序的返回值。像...

~$ gcc -Wall -std=c99 program.c && ./a.out && echo $?

这些都是分开工作的,这当然也有效:

~$ gcc -Wall -std=c99 program.c && ./a.out
...
~$ echo $?
5
~$

似乎问题在于知道何时/如果 ./a.out 成功,因为 ~$ ./a.out && echo $? 不起作用,要么!

最佳答案

&& 运算符仅在上一个命令成功时才执行下一个命令。请改用 ;

gcc -Wall -std=c99 program.c && (./a.out ; echo $?)

括号使 echo $?gcc 失败时不会发生。

关于c - Bash 一个 liner 来编译、执行和回显返回值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15870338/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com