令1 && 命令2如果這個命令1執行成功& &那麼執行這個命2
mv myfile myfile2 && echo "if you are seeing this then mv was success!"
如果| |左邊的命令(命令1)未執行成功,那麼就執行| |右邊的命令(命令2)
mv myfile myfile2 && echo "if you are seeing this then mv was success! "
從乙個審計檔案中抽取第1個和第2個域,並將其輸出到乙個臨時檔案中,如果這一操作未成功,我希望能夠收到乙個相應郵件:
awk '' test3 >test2 || echo "sorry the extraction didn't work " | mail root
如果使用來代替(),那麼相應的命令將在子s h e l l而不是當前s h e l l中作為乙個整體被執行,只有在中所有命令的輸出作為乙個整體被重定向時,其中的命令才被放到子s h e l l中執行,否則在當前s h e l l執行。
例子:如果s o r t命令執行成功了,可以先將輸出檔案備份,然後再列印
test.sorted && (cp test.sorted test.sorted_bak ;lp test.sorted)
^行首
$行尾^ [ t h e ]以t h e開頭行
[ s s ] i g n a [ l l ]匹配單詞s i g n a l、s i g n a l、s i g n a l、s i g n a l
[ss]igna[ll]".同上,但加一句點
[ m a y m a y ]包含m a y大寫或小寫字母的行
^ u s e r $只包含u s e r的行
[tty]$以t t y結尾的行
" .帶句點的行
^ d . . x . . x . . x對使用者、使用者組及其他使用者組成員有可執行許可權的目錄
^ [ ^ l ]
排除關聯目錄的目錄列表
^[^d] ls –l | grep ^[^d]
只顯示非資料夾的檔案
[ . * 0 ] 0之前或之後加任意字元
[ 0 0 0 * ] 0 0 0或更多個
[ ii]大寫或小寫i
[ i i ] [ n n ]大寫或小寫i或n
[ ^ $ ]空行
[ ^ . * $ ]匹配行中任意字串
^ . . . . . . $包括6個字元的行
[a- za-z]任意單字元
[ a - z ] [ a - z ] *
至少乙個小寫字母
[ ^ 0 - 9 " $ ]非數字或美元標識
[ ^ 0 - 0 a - z a - z ]非數字或字母
[ 1 2 3 ] 1到3中乙個數字
[ d d ] e v i c e單詞d e v i c e或d e v i c e
d e . . c e前兩個字母為d e,後跟兩個任意字元,最後為c e
" ^ q以^ q開始行
^ . $僅有乙個字元的行
^".[0-9][0-9]以乙個句點和兩個數字開始的行
' " d e v i c e " '
單詞d e v i c e
d e [ v v ] i c e " .
單詞d e v i c e
或d e v i c e
[ 0 - 9 ] " - [ 0 - 9 ] " - [ 0 - 9 ] " 對日期格式d d - m m - y y y y
[ 0 - 9 ] " " . [ 0 - 9 ] " " . [ 0 - 9 ] " " . [ 0 - 9 ] " i p位址格式
[ ^ . * $ ]匹配任意行
[a-za-z]*
匹配所有單詞
-c只輸出匹配行的計數。
-i不區分大小寫(只適用於單字元)。
-h查詢多檔案時不顯示檔名。
-l查詢多檔案時只輸出包含匹配字元的檔名。
-n顯示匹配行及行號。
-s不顯示不存在或無匹配文字的錯誤資訊。
-v顯示不包含匹配文字的所有行。
例子grep -v "sort" tab2
顯示不包含匹配文字的所有行
grep -n "sort" tab2
顯示匹配行及行號
grep -c "sort" tab2
只輸出匹配行的計數
精確匹配:grep "01">" tab2
grep -in "code" tab2
忽略大小寫
多次過濾
grep -in "code" tab2 | grep "02"
使用grep匹配「與」或者「或」模式
g r e p
命令加- e引數,這一擴充套件允許使用擴充套件模式匹配。例如,要抽取城市**為2 1 9或2 1 6,方法如下:
grep –e 『219|216』 tab2
類 等價的正規表示式
[ [ : u p p e r : ] ] [ a - z ]
[ [ : a l n u m : ] ] [ 0 - 9 a - za-z]
[ [ : l o w e r : ] ] [ a - z ]
[ [ : s p a c e : ] ]
空格或t a b鍵
[ [ : d i g i t : ] ] [ 0 - 9 ]
[ [ : a l p h a : ] ] [ a - z a - z ]
大多數系統管理員稱
/ d e v / n u l l
為位元池
,可以將之看成乙個無底洞,有進沒有出,永遠也不會填滿。
要檢視d n s
伺服器是否正在執行(通常稱為
n a m e d
),方法如下
ps -ef | grep "name"|grep -v "grep"
e g r e p
接受所有的正規表示式,
乙個顯著特性是可以以乙個檔案作為儲存的字串,然後將之傳給
e g r e p
作為引數,為此使用
- f開關。
egrep -f par2 tab2 par2是檔案,裡面包括各種匹配的具體格式
如果要查詢儲存**
3 2 l
或2 c c
,可以使用(
|)符號,意即「
|」符號兩邊之一或全部。
egrep '(code|sort)' tab2
Linux正規表示式 編寫正規表示式
為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...
正規表示式 Linux
主要內容 1 正規表示式2 基礎3 擴充套件4 通配5 grep命令 正規表示式基礎 1 元字元 metacharacters 是用來闡釋字元表示式意義的字元,簡言之,元字元就是描述字元的字元,它用於對字元表示式的內容 轉換及各種操作資訊進行描述。正規表示式是由一串字元和元字元構成的字串,簡稱re ...
Linux正規表示式
正規表示式是一種符號表示法,用於識別文字模式。linux處理正規表示式的主要程式是grep。grep搜尋與正規表示式匹配的行,並將結果輸送至標準輸出。1.grep匹配模式 grep按下述方式接受選項和引數 其中,regex表示正規表示式 1 grep options regex files 其中op...