![](/img/trans.png)
[英]How to call a C program inside bash script and store its return value to a variable?
[英]Checking the return value of a C program in a bash script?
我有一個bash腳本,我使用$檢查上次運行命令的退出代碼? 變量,但現在我正在執行一個C程序(從該腳本),如果程序成功執行,它返回0。 有什么方法可以在我的bash腳本中捕獲C程序的返回值嗎?
我相信不同的命令,如awk,sed等都是用C語言編寫的。他們如何使用$? 將退出代碼存儲在其中? 如何讓我的C程序將其退出代碼存儲在$ ??
我希望我的問題很清楚。
沒有必要做任何事情 - 如果你的C程序返回0,那將是什么將存儲在$?
執行它的shell的變量。
bash捕獲$?
的退出代碼$?
自動的。 或者, if
您只關心零/非零, if
可以使用該命令。
C程序的返回碼是int main()
函數返回的值或者exit()
函數的參數。 然后,系統通過wait()
系統調用使其可用於其父進程。 當父進程是bash
,這個值可以通過$?
變量。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.