2012-11-06 18 views
0

我需要收集shell腳本輸出到我的C程序鏈表節點,我已經試過POPEN()也。但是類型錯誤發生在那裏。我需要這個在我的項目中。 請幫助......如何獲得shell腳本輸出轉換成C結構變量

+0

您應該顯示您的代碼,然後我們也許可以幫助您解釋類型轉換錯誤的原因。 Popen()是正確的方法。 –

+1

歡迎來到Stack Overflow。當你問一個問題,尤其是這樣,你需要證明你已經把一些精力來解決你的問題,如果只是張貼一SSCCE([簡單,獨立的,完整的(編譯)示例](HTTP: //sscce.org/))根據你的代碼。它應該顯示你已經嘗試了什麼,並且你應該詳細說明發生了什麼問題以及你想要做什麼。在這種情況下,如果您遇到編譯問題,那麼放棄'編譯'部分即可。但它需要大部分可編譯。平臺(O/S)和編譯器信息也有幫助。 –

回答

1

那你試試用popen?這按預期工作:

#include <stdio.h> 

int main(void) 
{ 
    char buf[BUFSIZ]; 
    FILE *fp = popen("sh script", "r"); 

    while (fgets(buf, sizeof buf, fp) != NULL) 
     printf("Received: '%s'\n", buf); 

    pclose(fp); 
    return 0; 
}