您好,登錄后才能下訂單哦!
文件查看
cat
nl
tac
revcat常用選項
-E:顯示行結束符$
-n:對顯示出的每一行進行編號
-A:顯示所有控制符
-b:非空行編號
-s:壓縮連續的空行成一行
cat -E :顯示行結束符$
cat -A:顯示所有控制符
cat -n :對顯示出的每一行進行編號 ,包括空行
cat -b:非空行編號
cat -s :壓縮連續的空行成一行 (壓縮相鄰的空行成一行)
把文件按相反方向顯示
跟cat -b效果一樣,編號
把文件同一行的內容反方向顯示
hexdump
od
xxd
more
less
more:分頁查看文件
more -d: 顯示翻頁及退出提示
less:一頁一頁地查看文件或STDIN輸出
顯示文本前或后行內容
head
tail
tailf
默認顯示前十行
head -c :顯示文本前x字節
例:取出/etc/passwd 文件的前十個字節
head -n(n可省略) :顯示文本前x行內容
例:取出/etc/passwd文件的前十行內容
默認顯示文本的后十行
tail -n :顯示文件后x行
tail -f :跟蹤文件新加內容
tail -F:跟蹤文件名
找出ifconfig “網卡名” 命令結果中本機的IPv4地址
cut
按列抽取文本
-d DELIMITER: 指明分隔符,默認tab
-f FILEDS:
#: 第#個字段
#,#[,#]:離散的多個字段,例如1,3,6
#-#:連續的多個字段, 例如1-6
混合使用:1-3,7
-c 按字符切割
--output-delimiter=STRING指定輸出分隔符
顯示文件或STDIN數據的指定列
cut -d: -f1 /etc/passwd
cat /etc/passwd | cut -d: -f7
cut -c2-5 /usr/share/dict/words ?
cut -d -f 例:以冒號為分隔符,取出第1.3.4列
cut -c:按字符切割
取出ip地址
取出版本號
取出磁盤空間使用率
查出/tmp的權限,以數字方式顯示
paste
合并文件
-d 分隔符:指定分隔符,默認用TAB
-s : 所有行合成一行顯示
paste -s:
例:把文件a/b.log文件合成一行顯示
分析文本的工具
wc ?
文本數據統計
sort ?
整理文本
diff和patch
比較文件
.
wc
可用于統計文件的行總數、單詞總數、字節總數和字符總數
可以對文件或STDIN中的數據統計
wc story.txt
39 237 1901 story.txt
行數 字數 字節數 ?常用選項
-l 只計數行數
-w 只計數單詞總數
-c 只計數字節總數
-m 只計數字符總數
-L 顯示文件中最長行的長度
wc -l: 只查看文件行數
wc -w :只計文本單詞總數
wc -L :挑出a.log文件最長的一行
wc -m:只計字符總數
wc -c :只計字節總數
sort
文本排序
把整理過的文本顯示在STDOUT,不改變原始文件
常用選項
-r 執行反方向(由上至下)整理
-R 隨機排序
-n 執行按數字大小整理
-f 選項忽略(fold)字符串中的字符大小寫
-u 選項(獨特,unique)刪除輸出中的重復行
-t c 選項使用c做為字段界定符
-k # 選項按照使用c字符分隔的 # 列來整理能夠使用多次
sort -nr :把文本數字按大到小進行排序
sort -R:隨機排序
例: 隨機排序1到55的數字
sort -u : 去掉重復行
例:刪除a.log文件的重復行
查出分區空間使用率的最大百分比值
查出用戶UID最大值的用戶名、UID及shell類型
uniq
從輸入中刪除前后相接的重復的行
常用選項
-c: 顯示每行重復出現的次數
-d: 僅顯示重復過的行
-u: 僅顯示不曾重復的行
注:連續且完全相同方為重復
常和sort命令一起使用
sort userlist.txt | uniq -c
例:查看a.log文件不顯示相鄰的重復行
uniq -c :顯示每行重復出現次數
例:查看a.log文件每行重復出現的次數
uniq -d : 只顯示相鄰的重復行
例:查看a.log文件重復過的行
uniq -u :只顯示不重復行
例:查看文件a.log文件沒有重復過的行
統計訪問過日志的IP地址,并取出訪問次數最多的前三個
diff
比較兩個文件之間的區別
-u :命令的輸出被保存在一種叫做“補丁”的文件中 ?使用 -u 選項來輸出“統一的(unified)”diff格式文件,最適用于補丁文件
.
patch
-b:復制在其它文件中進行的改變(要謹慎使用) ?適用 -b 選項來自動備份改變了的文件
.
diff -u foo.conf foo2.conf > foo.patch
patch -b foo.conf foo.patch
例:查看文件a.log和aa.log文件的不同
diff -u :顯示的更加詳細
例:
文本處理三劍客sed
grep:文本過濾(模式:pattern)工具 ?
sed:stream editor,文本編輯工具 ?
awk:Linux上的實現gawk,文本報告生成器
作用:文本搜索工具,根據用戶指定的“模式”對目標文本逐行進行匹配檢 查;打印匹配到的行
模式:由正則表達式字符及文本字符所編寫的過濾條件
常用選項--color=auto: 對匹配到的文本著色顯示 ?
-m # 匹配#次后停止 ?
-v 顯示不被pattern匹配到的行 ?
-i 忽略字符大小寫 ?
-n 顯示匹配的行號 ?
-c 統計匹配的行數 ?
-o 僅顯示匹配到的字符串 ?
-q 靜默模式,不輸出任何信息 ?
-A # after, 后#行 ?
-B # before, 前#行 ?
-C # context, 前后各#行 ?
-e 實現多個選項間的邏輯or關系 grep –e ‘cat ’ -e ‘dog’ file ?
-w 匹配整個單詞 ?
-E 使用ERE ?
-F 相當于fgrep,不支持正則表達式 ?
-f file 根據模式文件處理
從/etc/passwd中找出包含root的行
grep -m
例: 過濾/etc/passwd中出現的前兩次bash
grep -v
例: 顯示/etc/passwd文件中不匹配到bash的行
grep -i :忽略大小寫
grep -n
例:顯示/etc/passwd文件中匹配到root在文件中的行數
grep -c
例:統計/etc/passwd文件中匹配到root的行數
grep -o
例:只顯示/etc/passwd文件中匹配到的bash字符串
grep -q
例: 不輸出任何信息
grep -A
例:顯示找到root行的后三行
grep -B
例: 顯示找到root行的前三行
grep -C
例:顯示找到root行的前三行和后三行
grep -e
例 :顯示/etc/passwd文件中匹配到root或bash的行
grep -f
例:滿足greo.log文件中任意一行的都顯示出來
例:
正則表達式
由一類特殊字符及文本字符所編寫的模式, 其中有些字符(元字符)不表示字符字面意義,而表示控制或通配的功能
分兩類基本正則表達式:BRE,grep,vim
擴展正則表達式:ERE,grep -E, egrep,nginx
取出分區利用率最大的值
例
例:搜索以bash結尾的行
egrep及擴展的正則表達式
egrep = grep -E ?
擴展正則表達式的元字符: ?
字符匹配:
. 任意單個字符 [] 指定范圍的字符 [^] 不在指定范圍的字符
次數匹配:* 匹配前面字符任意次
? 0或1次
- 1次或多次
{m} 匹配m次
{m,n} 至少m,至多n次
.
位置錨定:
^ 行首
$ 行尾
\<, \b 語首
\>, \b 語尾
.
分組:
()
后向引用:\1, \2, ...
.
或者:
a|b a或b
C|cat C或cat
(C|c)at Cat或cat
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。