使用system()函式呼叫Linux指令碼

2021-06-02 05:24:41 字數 423 閱讀 4236

**  

system()函式在函式庫中,通過他可以呼叫linux中的指令碼。具體使用可以用 man system來看。 

這個函式就乙個引數,就是你要執行的命令的字串。比如,呼叫的指令碼位於/home/usr/joker/test.sh,那麼就可以這樣在c/c++中呼叫system("/home/usr/joker/test.sh") 。這個地方指明絕對路徑是非常重要的。因為這個函式首先會檢查環境變數中存在的路徑,然後再檢查本目錄(c/c++程式執行的目錄,不是編譯的目錄),如果指令碼存在,那麼就執行,否則返回失敗。這裡使用絕對路徑,就是要保證該函式可以找到這個指令碼,然後正確執行。

指令碼中的內容也要注意,一定要指名所操作物件的所在位置,否則他會搜尋c/c++程式所在的目錄(同一級目錄)。寫的指令碼中提供絕對路徑,保證執行。還有在指令碼中最好加足夠的報錯機制,保證能及時檢驗錯誤發生位置。

system函式呼叫

相關函式 fork,execve,waitpid,popen 表頭檔案 include 定義函式 int system const char string 函式說明 system 會呼叫fork 產生子程序,由子程序來呼叫 bin sh c string來執行引數string字串所代表的命令,此命 ...

使用system()函式呼叫Linux指令碼

system 函式在函式庫中,通過他可以呼叫linux中的指令碼。具體使用可以用 man system來看。這個函式就乙個引數,就是你要執行的命令的字串。比如,呼叫的指令碼位於 home usr joker test.sh,那麼就可以這樣在c c 中呼叫system home usr joker t...

system系統呼叫的使用

system 系統呼叫在應用中很廣泛 可以直接在c 中呼叫命令,執行一些特殊操作,用法如下.1.直接執行命令 可以在c檔案中直接執行命令,這是基本用法,例如 system mkdir test system chmod 777 test.bin 等等 2.如果需要執行的命令是變動的,則可以使用字串變...