linux shell中的特殊符號與命令

linux shell中的特殊符號

  • *****:表明零個或多個任意字符
  • :只表明一個任意字符,無論是數字仍是字母,只要是一個字符,都能匹配出來
  • #:表註釋說明,即後面的內容都會被忽略

如:linux

root@centos001:~# a=1
root@centos001:~# b=2
root@centos001:~# c=\$a\$b
root@centos001:~# echo $c
$a$b
  • ****:脫義字符,會將後面的特殊符號還原爲普通字符

幾個與特殊符號**|**相關的命令

:這些操做都不會改變文件的內容,至關於一種讀取手段shell

  • 命令cut:用於截取某個字段

語法:cut 【選項】;
-d:後面跟分隔字符,分隔字符要用單引號(實際雙引號也行)括起來。
-c:後面接的是第幾個字符。
-f:後面接的是第幾個區塊。
*後面會學到專門用於分割的命令awkcentos

root@centos001:~# cat /etc/passwd |head -2  
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
root@centos001:~# cat /etc/passwd |head -2 |cut -d ":" -f 1 //截取在冒號第一冒號前面的字符
root
bin
root@centos001:~# cat /etc/passwd |head -2 |cut -d ":" -f 1,2
root:x
bin:x
root@centos001:~# cat /etc/passwd |head -2 |cut -d ":" -f 1-3
root:x:0
bin:x:1
root@centos001:~# cat /etc/passwd |head -2 |cut -c 4 //截取第4個字符
t
:
  • 命令sort:用於排序

:當sort不加任何選項的時候,將會從首字符依次向後按ASCII碼值進行比較,最後按升序排序
-n:表示純數字排序 ,字母會被認爲是
-r:反向排序
-t:後面跟分隔字符,同cut -d
-kn1,n2:表示由n1區間排序到n2區間bash

  • 命令wc:用於統計文檔的行數、字符數或詞數

-l:統計行數
-m:統計字符數,會連隱藏的字符一塊兒統計
-w:統計詞數,以空格做爲分割符號ui

  • 命令 uniq: 用來刪除重複的行,須要先給文件排序,否則無論用

-c: 用於統計重複的行.net

  • 命令 tee:命令後跟文件名,相似重定向> 可是多一個功能,在屏幕顯示
  • 命令 tr: 用於替換字符

經常使用於把小寫字母變成大寫字母,
tr '[a-z]' '[A-Z]'code

  • 命令 split: 用於切割文檔

-b: 按大小分割文檔,單位是byte
-l: 按行數來分割文檔 :切割一個文件時系統會自動給切割後的文件分配文件名,默認x開頭, 固然也能夠自定義前綴名blog

[root@centos001 test]# split -b 1000 a.txt  abc
[root@centos001 test]# ls
abcaa  abcaw  abcbs  abcco  abcdk  abceg  abcfc  abcfy  abcgu  abchq  abcim  abcji

特殊符號

  • 特殊符號 $ :表示變量前綴

!$:正則裏表示行尾,上條命令中的最後一個變量排序

  • 特殊符號 ; :換行符

當咱們在一行中須要兩個或這以上的命令的時候就須要用到;ci

  • 特殊符號 ~ :匹配符,表示用戶的家目錄
  • 特殊符號 & :放到命令後面,會把命令放到後臺
  • 重定向符號 > >> 2> 2>> &> ,取代追加

>: 取代
>>: 追加
2>: 錯誤重定向
2>>: 錯誤追加劇定向
&>: 正確錯誤所有輸入

  • 中括號 [] :括號內爲字符組合,表明其中任何一個,也能夠是一個範圍
  • **特殊符號 && 和 || **

&&:表示只有前面的命令執行成纔會執行後面的命令。
||:表示或者的意思,1.當兩條命令同時執行,第一跳沒成功時會執行第二條;2.當第一條執行成功的時候,不會執行第二條,固然就不會有顯示。

擴展

相關測驗題目:http://ask.apelearn.com/question/5437 擴展

  1. source exec 區別 http://alsww.blog.51cto.com/2001924/1113112
  2. Linux特殊符號大全http://ask.apelearn.com/question/7720
  3. sort並未按ASCII排序 http://blog.csdn.net/zenghui08/article/details/7938975
相關文章
相關標籤/搜索