shell程式設計

2021-10-02 05:55:09 字數 2036 閱讀 2936

shell是命令直譯器,也可以程式設計,包含j過程諾言的諸多特性。常用的shell見下表

ash, 由kenneth almquist編寫,是linux中占用資源最少的一種shell, 它只包含24個內部命令,因而使用起來很不方便

bash, 是iinux的預設shell, 由brian f ox和chet ramey共同完成,是bourne again shell的縮寫,內部命令- 共有40個,具有以下特點

a)可以使用類似dos下面的doskey功能, 用方向鍵查閱和快速輸入並修改命令

b)自動通過查詢匹配的方式給出以某字串開頭的命令

c)包含了自身的幫助功能,你只要在提示符下面鍵入help就可以得到相關的幫助

ksh, 由eric gisim編寫,是korn shell的縮寫。共有42條內部命令。最大的優點是幾乎和商業發行版的ksh完全相容

csh,由以william joy為代表的47位作者編寫,共有52個內部命令。該shell其實指向/bin/tcsh這 個shel,也就是說:csh其實就是tcsh

zch, 由pua1 falstad完成, 共有84個內部命令。如果只是一 般用途,沒必要安裝這種shell

shell程式設計類似dos中的批處理檔案,又叫shell script, shell程式

輸入輸出重定向

在linux中,每個程序都有3個檔案描述指標可供使用:

1標準輸入,檔案描述指標為0

2.標準輸出,檔案描述指標為1

3.標準錯誤輸出,檔案描述指標為2

這3個指標使程序可以接收標準輸入終端的輸入,同時由標準輸出終端來顯示。linux中也提供 了輸入輸出重定向來取

代這些標準輸入輸出裝置。在shel1中, 可以使用》,

前台和後台

shel中的環境變數

1)臨時變數: sl程式內部定義,包括使用者自定義變數和位置變數

2)永久交量:即環境變數,值不隨解本的執行結束而消失(如spath. slang, she sps1, shome)變數命名:字母,數字或下劃線組成,不能以數字開頭,讀取變數時加s.

如果值中有空格,

需要使用引號,單引號不解析其中的變數,照樣顯示;

雙引號會把變數解析出來.

export

在命合行中設定的交量是當的區域性變數,epr後變為環境變數(0cooce命令執行但僅限於當前會話,如需要每次會話能訪問,則需要加在-/ bashr或-/.ah pofle中

shell中其它的預定義臨時變數

簡單的shell

單引號和雙引號的區別

執行shell

1.給該使用者賦予shell的執行許可權

2.sh ./***.sh

鍵盤上輸入-read

算數運算

測試語句

Shell程式設計 shell特性

linux會預設記錄1000條歷史記錄,可通過 echo histsize 檢視,如果講histsize更改為2000,那麼會預設儲存2000條。1000條記錄儲存在家目錄的 bash history 中,僅當使用者正常退出當前shell時,當前shell中執行的命令才會儲存到 bash histo...

Shell程式設計 Shell函式

shell函式 1.將命令序列按格寫在一起 2.可方便重複使用命令序列 3.shell函式定義 function 函式名 4.呼叫函式的方法 函式名 引數1 引數2 5.shell函式應用示例 1 兩個數字求和 要求 通過sum 定義函式 兩個數求和 方法一 root localhost vim d...

Shell程式設計

1 建立指令碼 vi emacs等即可 bin sh 2 shell變數 對shell來講,所有的變數的取值都是乙個字串 shell是一種解釋性語言,變數無需事先定義 shell中的系統變數 程式命令列引數的數目 儲存前乙個命令的返回值 0 當前程式名 以 1 2 形式儲存所有輸入的命令列引數 以 ...