Shell指令碼學習 理解shell

2022-09-09 21:48:21 字數 601 閱讀 6959

使用者預設的shell 由 /etc/passwd 中的對應使用者的配置決定,一般為:bash shell( /bin/bash )

/bin/sh 這個shell 一般用於shell 指令碼

通過 bash 命令可以建立子shell,及父程序建立子程序。

ps -f 可以檢視當前使用者程序的詳細資訊,ps -p 可以檢視程序間的關係(父子關係)

可以巢狀建立子shell ,但是巢狀的shell 花銷較大

注意父子程序的變數

可用(cmd;)來建立子shell並執行 括號內的命令「cmd」,命令可以多個,用 ; (分號)隔開

子shell 的其他用法

後台模式

外部命令

外部命令,也可成為檔案系統命令,存在與bash shell 之外的程式,通常位於 /bin/ 、/usr/bin、/sbin 或 /usr/sbin 中,可用which、type命令列出外部命令的位置

執行外部命令時,會建立乙個子程序,此操作稱為 衍生

(forking),

父程序為使用者的shell

內部命令

shell 內部自帶的 命令

shell 指令碼學習

case var in pattern statement esac case 的指令碼語法是雙分號結尾的。sed e s i.86 i386 查詢替換。sed 流編輯器 將輸入流中的i.86替換成i386。是個萬用字元。輸入流的形式可能是 管道,檔案。shell d mkdir p 指令碼的條件執...

shell指令碼學習

shell 學習 1.shell 解釋型語言,有很多種直譯器。預設是 bin bash。shell指令碼第一行要寫 bin bash 2.shell指令碼執行的方法 1 sh sh 2 chmod a x sh sh 注意,一定要寫成.sh,而不是 sh。執行其它二進位制的程式也一樣,直接寫 sh,...

shell指令碼學習

反引號 反引號是命令替換,命令替換是指shell可以先執行中的命令,將輸出結果暫時儲存,在適當的地方輸出。語法 command 反引號是tab鍵的上乙個按鍵 重定向 如果檔案不存在,將建立新的檔案,並將資料送至此檔案 如果檔案存在,則將資料新增在檔案後面 如果檔案不存在,同上,如果檔案存在,先將檔案...