shell編程(適合初學者)

1基本語法

1.1 變量

  • 環境變量:環境變量可以從子進程傳遞給父進程 一次shell進程的環境變量可以從當前shell進程傳遞給fork出來的子進程用printenv命令可- 以顯示當前shell進程的環境變量。
  • 本地變量:只存在雨當前shell進程中。

注意:定義變量是等號兩邊不能加空格。
在這裏插入圖片描述

1. 2文件名代換

    • 匹配0個或者多個任意描述符
  • ?匹配一個任意字符
  • [若干字符] 匹配方括號中任意一個字符的一次出現
    在這裏插入圖片描述

1.3 命令代換符

在這裏插入圖片描述

1.4算術代換

$變量名 : 取變量的值
$(變量名): 取變量的值(安全)
$(()) :對變量執行算數運算
$(命令):取命令執行結果
$[]:對變量執行算數運算

1.5轉義字符 \ 和 –

在這裏插入圖片描述

1.6單引號雙引號

在這裏插入圖片描述
雙引號可以將字符串中的變量展開但單引號不可以

1.7數據類型

只有string類型

2shell腳本語法

2.1條件測試

命令test或 [ 可以測試一個條件是否成立 如果成立爲0 不成立爲1.

  • 整數判別符: 只能用於比較整數中

    • -eq :等於
    • -gt :大於
    • -lt: 小於
    • -ge大於等於
    • -le 小於等於
      在這裏插入圖片描述
      在這裏插入圖片描述
  • 文件類型判別符:

  • 字符串長度判別符

  • 字符串比較判別符

  • 邏輯或與
    在這裏插入圖片描述
    在這裏插入圖片描述

2.2分支語句

2.2.1if

在這裏插入圖片描述

#!/bin/bash

if [ -f smple.sh ]
then
        echo "smaple是個文件"
elif [ -d smple.sh ] 
then
	echo "smaple,sh是個目錄"
else
	echo “”
fi

在這裏插入圖片描述
在這裏插入圖片描述

2.2.2case

在這裏插入圖片描述

2.3循環

2.3.1for/do/done

在這裏插入圖片描述

2.3.2while/do/done

在這裏插入圖片描述

2.3.3break/continue

在這裏插入圖片描述

2.4位置參數 和特殊變量

在這裏插入圖片描述

2.5輸入輸出

在這裏插入圖片描述
在這裏插入圖片描述

2.6函數

在這裏插入圖片描述

2.7shell腳本調試方式

在這裏插入圖片描述
在這裏插入圖片描述

3正則表達式

3.1基本語法

在這裏插入圖片描述

3.1.1字符類

在這裏插入圖片描述

3.1.2數量限定符

在這裏插入圖片描述

3.1.3位置限定符

在這裏插入圖片描述

3.2grep命令

3.2.1作用

在這裏插入圖片描述

3.2.2格式及主要參數

在這裏插入圖片描述 在這裏插入圖片描述

3.2.3簡單實例

在這裏插入圖片描述

3.2.4複雜實例

在這裏插入圖片描述
在這裏插入圖片描述

3.3find

主要作用:搜索文件

  • 主要 :find命令不能和管道命令結合使用 可以使用exec參數
  • xargs參數 :默認不能處理有空格的文件名
  • 在這裏插入圖片描述
    在這裏插入圖片描述

4sed

4.1基礎

在這裏插入圖片描述

4.2選項含義

在這裏插入圖片描述在這裏插入圖片描述

4.3常用sed命令

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

5awk命令

在這裏插入圖片描述
在這裏插入圖片描述

在這裏插入圖片描述

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