簡體   English   中英

C,在一個shell實例中執行多個命令

[英]C , Execute multiple commands in one shell-instance

有沒有辦法在相同的shell實例中執行shell命令? 因為,在執行命令后, system()離開了啟動的外殼程序。

您始終可以使用分號將shell命令構造為單行命令。 如:

cd /home/user;mkdir tmp;ls

您的意思是在運行程序的同一終端中執行命令嗎? 您可以使用popen實現:

#include <stdio.h>

int main() {
    FILE *f = popen("ls", "r");
    char line[1024];
    size_t len;
    while (fgets(line, 1024, f) != NULL) {
        printf("%s", line);
    }
    pclose(f);
    return 0;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM