[問題] 如何在C程式中執行linux指令??

看板LinuxDev作者 (XD)時間16年前 (2008/11/23 00:19), 編輯推噓4(405)
留言9則, 5人參與, 最新討論串1/1
使用stdlib.h內的system("")可以解決單純指令的問題 但是例如說想要切換目錄 cd /home/..etc 他卻不會執行 或是想要source filename.ini 他會看到前面的指令,但是對於後面的參數,路徑之類的 沒有反應. 請問要怎麼解決這個問題呢? 或是除了system()指令還有有其他方法可以用CorC++ 自動執行linux的command嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.116.228.10

11/23 00:27, , 1F
因為source不是程式...而是內建在shell的指令
11/23 00:27, 1F

11/23 00:28, , 2F
還有cd這些..
11/23 00:28, 2F

11/23 00:32, , 3F
exec* 系列的函數
11/23 00:32, 3F

11/23 13:44, , 4F
cd只會切換子行程的目錄,你要用chdir
11/23 13:44, 4F

11/23 21:59, , 5F
有沒有考慮先寫在script中 再用system()去run?
11/23 21:59, 5F

11/24 21:25, , 6F
chdir跟cd一樣沒有作用~寫在scrip的方式有試過
11/24 21:25, 6F

11/24 21:26, , 7F
但是system("sh ...")指令不會執行所以也無法作用
11/24 21:26, 7F

11/24 22:34, , 8F
chdir應該是可以,先找個可以跑成功的sample code用用吧
11/24 22:34, 8F

11/25 05:17, , 9F
先前code寫錯,chdir可以用,感激不盡!
11/25 05:17, 9F
文章代碼(AID): #19A33rsK (LinuxDev)
文章代碼(AID): #19A33rsK (LinuxDev)