正則表達式
分兩類:
基本正則表達式:BRE
擴展正則表達式:ERE
grep -E, egrep
正則表達式引擎:
採用不一樣算法,檢查處理正則表達式的軟件模塊
PCRE
元字符分類:字符匹配、匹配次數、位置錨定、分組python
基本正則表達式元字符
字符匹配:
. 匹配任意單個字符
[] 匹配指定範圍內的任意單個字符,示例:[wang] [0-9] [a-z] [a-zA-Z]
[^] 匹配指定範圍外的任意單個字符
[:alnum:] 字母和數字
[:alpha:] 表明任何英文大小寫字符,亦即 A-Z, a-z
[:lower:] 小寫字母 [:upper:] 大寫字母
[:blank:] 空白字符(空格和製表符)
[:print:] 可打印字符
[:punct:] 標點正則表達式
匹配次數:用在要指定次數的字符後面,用於指定前面的字符要出現的次數算法
位置錨定:定位出現的位置
^ 行首錨定,用於模式的最左側
$ 行尾錨定,用於模式的最右側
^PATTERN$ 用於模式匹配整行
^$ 空行
^[[:space:]]*$ 空白行
\< 或 \b 詞首錨定,用於單詞模式的左側
\> 或 \b 詞尾錨定,用於單詞模式的右側
\<PATTERN\> 匹配整個單詞shell
Shell程序:提供了編程能力,解釋執行
shell編程:過程式、解釋執行
編程語言的基本結構:
各類系統命令的組合
數據存儲:變量、數組
表達式:a + b
語句:if
shell腳本:
包含一些命令或聲明,並符合必定格式的文本文件
格式要求:首行shebang機制
#!/bin/bash
#!/usr/bin/python
#!/usr/bin/perl
shell腳本的用途有:
自動化經常使用命令
執行系統管理和故障排除
建立簡單的應用程序
處理文本或文件編程
建立shell腳本
第一步:使用文本編輯器來建立文本文件
第一行必須包括shell聲明序列:#!
示例:#!/bin/bash
添加註釋
註釋以#開頭
第二步:運行腳本
給予執行權限,在命令行上指定腳本的絕對或相對路徑
直接運行解釋器,將腳本做爲解釋器程序的參數運行數組
腳本代碼開頭約定
一、第一行通常爲調用使用的語言
二、程序名,避免更改文件名爲沒法找到正確的文件
三、版本號
四、更改後的時間
五、做者相關信息
六、該程序的做用,及注意事項
七、最後是各版本的更新簡要說明
shell腳本示例
#!/bin/bashbash
echo 「hello 」編程語言
腳本調試
檢測腳本中的語法錯誤
bash -n
調試執行
bash -x 編輯器