簡單shell命令學習(一)

2021-10-01 12:10:14 字數 2200 閱讀 4772

shell 是乙個用 c 語言編寫的程式,它是使用者使用 linux 的橋梁。shell 既是一種命令語言,又是一種程式語言。

shell 是指一種應用程式,這個應用程式提供了乙個介面,使用者通過這個介面訪問作業系統核心的服務。

ken thompson 的 sh 是第一種 unix shell,windows explorer 是乙個典型的圖形介面 shell。

1.建立s**件

開啟文字編輯器(可以使用 vi/vim 命令來建立檔案),新建乙個檔案 shell.sh,擴充套件名為 sh(sh代表shell),即使沒有副檔名也並不影響指令碼執行,見名知意就好,如果你用 php 寫 shell 指令碼,副檔名就用 php 好了。

擴:建立命令可以多種方式

(1) 使用cat命令 例:cat>>text.sh

(2) 使用vim命令 例:vim text.sh。在新視窗輸入i(編輯模式),輸入內容,按esc(切換回命令模式)輸入:wq( 儲存並 退出)

(3) 使用touch命令 (本命令不常用) 例:touch text.sh

我們這裡使用vim命令;

使用cat命令可檢視文字內容

2.執行shell指令碼

提示此資訊為沒有執行許可權。那麼我們給檔案加許可權

好,現在執行成功了。

**注:**一定要寫成 ./test.sh,而不是 test.sh,執行其它二進位制的程式也一樣,直接寫 test.sh,linux 系統會去 path 裡尋找有沒有叫 test.sh 的,而只有 /bin, /sbin, /usr/bin,/usr/sbin 等在 path 裡,你的當前目錄通常不在 path 裡,所以寫成 test.sh 是會找不到命令的,要用 ./test.sh 告訴系統說,就在當前目錄找。

3、變數

text=『seaiio』

注意,變數名和等號之間不能有空格,這可能和你熟悉的所有程式語言都不一樣。同時,變數名的命名須遵循如下規則:

(1) 命名只能使用英文本母,數字和下劃線,首個字元不能以數字開頭。

(2) 中間不能有空格,可以使用下劃線(_)。

(3) 不能使用標點符號。

(4) 不能使用bash裡的關鍵字(可用help命令檢視保留關鍵字)。

使用變數時,只要在變數名前面加美元符號即可,如:test=『seaiio』; echo $test

4、字串

字串是shell程式設計中最常用最有用的資料型別(除了數字和字串,也沒啥其它型別好用了),字串可以用單引號,也可以用雙引號,也可以不用引號。單雙引號的區別跟php類似。

單引號字串的限制:

單引號裡的任何字元都會原樣輸出,單引號字串中的變數是無效的;

單引號字串中不能出現單獨乙個的單引號(對單引號使用轉義符後也不行),但可成對出現,作為字串拼接使用。

雙引號的優點:

雙引號裡可以有變數

雙引號裡可以出現轉義字元

例:

輸出字串個數

demo='hellow';

echo $

結果

6
5、陣列

#!/bin/bash

demo[1]='1'

demo[2]='2'

demo[3]='3'

length=$ #獲得陣列長度

echo $length

echo $ #獲得陣列元素

shell命令學習(一)

shell命令學習之for for 變數 in 值 do宣告 done 例子 for a in a b x do echo a done 輸出 abx while do 命令學習 bin sh echo 請輸入密碼 read trythis while trythis s do echo sorry...

簡單的一些shell指令碼學習 Unix命令列程式

學習 whoami 用途 顯示 登入名。解釋 與使用命令 who 並指定 am i 不同,whoami 命令在有 root 使用者許可權時也有效,因為它不檢查 etc utmp 檔案。date 用途 顯示和設定系統日期和時間。格式 date 選項 顯示時間格式 以 開頭,後面接格式 date 設定時...

shell指令碼簡單命令

shell 命令直譯器 處於系統核心和使用者之間負責解釋命令列的 登入之後預設的shell程式是 bin bash 不同的shell內部指令,執行環境會有所區別 常見的shell bin sh bin bash sbin nologin bin bash 是指這個指令碼是用 bin bash來解釋執...