實現乙個簡單的shell

2021-10-06 16:15:41 字數 797 閱讀 6181

shell:命令列直譯器,是一段程式,獲取標準輸入,進行解析,得到使用者想要執行的shell命令程式名稱,以及執行引數,然後執行這個指定的程式,將引數賦予其中。

******_shell編寫思路:

#include

#include

#include

#include

#include

intmain()

;fgets

(buf,

1023

,stdin);

//從標準輸入讀取一行資料

buf[

strlen

(buf)-1

]='\0'

;//將最後的換行符替換為字串結尾標誌

printf

("buf:[%s]\n"

,buf)

;char

* ptr = buf;

char

* ar**[32]

=;int argc =0;

while

(*ptr !=

'\0'

)*ptr =

'\0';}

ptr++;}

ar**[argc]

=null

;//引數以null作為結尾

pid_t pid =

fork()

;if(pid ==0)

wait

(null);

//等待子程序退出,避免子程序成為殭屍程序

}return0;

}

實現乙個簡單的shell(2)

tomorrow 星辰 部落格。這是本部落格的第乙個文章 主要介紹如何用 c 語言基於linux 系統來實現乙個簡單shell diy 乙個shell 通過自己程式設計實現乙個linux 下的shell,可以使得個人對程序的概念 程序的通訊和作業系統的執行的理解更加的深刻。還會大大增加個人學習的成就...

編寫乙個簡單的shell

include include include include include include include include void getloginname void gethostname void getdir p printf s p int main char argv 32 char...

乙個簡單的Shell指令碼

最近新學linux的shell程式設計。試著寫了乙個遍歷資源目錄的子目錄,每個資源子目錄中拷貝10個檔案到目標目標的小指令碼。沒有什麼技術含量,只是防止自己忘記。bin sh srcroot vsu data2 datasource npm fiveminute srcpath null myroo...