Shell基礎(一)

Shell 是一個用 C 語言編寫的程序,它是用戶使用 Linux 的橋樑。Shell 既是一種命令語言,又是一種程序設計語言。

1,eg: #!/bin/sh

    #! 告訴系統其後路徑所指定的程序即是解釋此腳本文件的 Shell 程序。

2,linux中的bash它是一個shell,人機對話的窗口,它是一個程序,是一個gnu軟件,一般linux中默認shell就是bash

運行shell腳本的兩種方式:

  • 作爲可執行程序
  1. 賦予執行權限
  2. 執行腳本

eg:

chmod 777 hello.sh

./hello.sh

  • 作爲解釋器參數

eg:

/bin/bash hello.sh

3shell中的單雙引號

       1>單引號裏的任何字符都會原樣輸出,單引號字符串中的變量是無效的;

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

       2>雙引號裏可以有變量

雙引號裏可以出現轉義字符

4,~在linux中代表用戶的主目錄,也就是所說的家目錄

       對於一般用戶,~表示/home/用戶名

       對於root用戶,~表示/root

5,只讀變量:使用 readonly 命令可以將變量定義爲只讀變量,只讀變量的值不能被改變。

6,刪除變量:使用 unset 命令可以刪除變量

       eg:

#! /bin/bash

myUrl="http://www.baidu.com"

echo $myUrl

readonly myUrl

myUrl="http:www.taobao.com"

myUrl_1="http://www.runoob.com"

echo $myUrl_1

unset myUrl_1

echo $myUrl_1

 

       結果:

7,獲取字符串長度,提取,查找子字符串      

 #! /bin/bash

#獲取字符串長度

one="hello"

two="world"

echo ${#one}

#提取子字符串

echo ${two:2:4}

#查找字符o的位置

echo `expr index "$one" o`

結果:

 

8,數組:Bash Shell 只支持一維數組(不支持多維數組),初始化時不需要定義數組大小

eg:      

 #! /bin/bash

one=(a b c "erwe")

echo ${one[2]}

echo ${one[3]}



#獲取數組的元素

echo "數組的元素是:${one[*]}"

echo "數組的元素是:${one[@]}"



#獲取數組的長度

echo "數組元素的個數爲:${#one[*]}"

echo "數組元素的個數爲:${#one[@]}"   

結果:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章