2014-03-02 148 views

回答

0

我發現這個解決方案的問題,它在我的情況。

char *args[] = {"/usr/bin/wget", "-P","./Folder", "http://www.google.com", (char *) 0 };

execv("/usr/bin/wget", args);

而另一解決方案是直接運行的命令與系統功能,如:

system(wget -P ./Folder http://www.google.com)

1

execl("/usr/bin/wget", "-P", "./Folder", "http://www.google.com", NULL);

除非你有使用EXEC,我建議使用來自libc的system,因爲它更便於攜帶(如果你決定你想將它)。

+0

我在運行給定命令時收到此警告,以及它不是下載給定文件夾中的頁面。 'code.c:在函數'main'中: code.c:47:8:警告:在函數調用中缺少哨兵[-Wformat]' –

+0

哦,你需要在參數列表末尾有一個NULL。我會編輯以反映這一點。 – Tyler

+0

現在我已經運行了這個命令,但它正在當前工作目錄中下載頁面。但我想下載文件夾內的頁面。 'execl(「/ usr/bin/wget」,「-P」,「./Folder」,「http://www.google.com」,NULL);' –