歡迎您光臨本站 註冊首頁

用各種C函數實現一個簡單的互動式Shell

←手機掃碼閱讀     火星人 @ 2014-03-26 , reply:0

用講過的各種C函數實現一個簡單的互動式Shell,要求:

1、給出提示符,讓用戶輸入一行命令,識別程序名和參數並調用適當的exec函數執行程序,待執行完成後再次給出提示符。

2、識別和處理以下符號:

•簡單的標準輸入輸出重定向(<和>):仿照例 30.5 「wrapper」,先dup2然後exec。

•管道(|):Shell進程先調用pipe創建一對管道描述符,然後fork出兩個子進程,一個子進程關閉讀端,調用dup2把寫端賦給標準輸出,另一個子進程關閉寫端,調用dup2把讀端賦給標準輸入,兩個子進程分別調用exec執行程序,而Shell進程把管道的兩端都關閉,調用wait等待兩個子進程終止。

你的程序應該可以處理以下命令:

○ls△-l△-R○>○file1○
○cat○<○file1○|○wc△-c○>○file1○
○表示零個或多個空格,△表示一個或多個空格

[火星人 ] 用各種C函數實現一個簡單的互動式Shell已經有83次圍觀

http://coctec.com/docs/linux/show-post-184086.html