1. 程式人生 > 遊戲 >國產RPG《部落與彎刀》正式版反向跳票 今日發售

國產RPG《部落與彎刀》正式版反向跳票 今日發售

[xf@xf-netdisk content-under]$ cat /home/xf/qqs/baidu/personal-code/content-under/log/影視庫有效關鍵詞和外鏈-log| sort -t $'\t' -k 2,2 -u > log/test-log

可以根據\t分割,用第2列排序

[xf@xf-netdisk content-under]$ cat /home/xf/files/novel/網盤需求-k| awk -F '\t' '{print $3}' > /home/xf/files/novel/網盤需求-k3

可以獲取文字檔案中的第三列資料

今天對awk、uniq、sort三個命令做了基礎功能的學習,這裡自己記錄一下:

1.awk(資料處理工具,將一行分割成多個“欄位”來處理)

awk -F '文字切割符'‘{處理過程}’ 檔名稱

如:cat /ect/passwd | awk -F ':' '{print $1}' #以:分割,列印第一列的資料;如果為$0表示整個檔案內容

cat /etc/passwd | awk -F ''BEGIN {print "begin,goto"} {print $1","$7} END {print “end,end”} #以空白符作為分割,列印begin,goto開始執行資訊,列印1,7行,以end,end結束

2.uniq命令用來過濾重複部分顯示檔案內容,這個命令讀取輸入檔案,並比較相鄰的行

引數:

-c 顯示輸出中,在每行行首加上本行在檔案中出現的次數

-d 只顯示重複行

-u 只顯示檔案中不重複的各行

-n 前n個欄位與每個欄位前的空白一起被忽略

+n 前n個字元被忽略,之前的字元被跳過(字元從0開始編號)

-f n與-n相同,這裡n是欄位數

-s n與+n相同,這裡n是字元數

常用: uniq -c 首行顯示檔案中出現的次數

3.sort 排序

引數:

-u 在輸出行中去除重複行

-r 預設的排序方式為升序,-r轉換為降序排列

-n 預設按照字元來排序出現10在2前面,-n以數值來排序

-t 後面設定間隔符

-k 指定列數

如:sort -n -k 2 -t : test.txt 以數值排序,按照第二列以“:”間隔來排列順序

以上簡單總結而已,後續如有其他使用,再更新!!!

日常使用相關:

1.擷取日誌中特定時間段的日誌內容

sed -n '/2016-08-25 09:44:10/,/2016-08-25 09:44:30/p' 1.txt > test.txt

2.nginx 訪問日誌統計訪問的url

擷取特定時間段的日誌

cat nginx.acc.log | egrep "12/Aug/2016" | sed -n '/14:59:44/,/15:47:23/p' > a.txt

排序

cat a.txt |awk -F '+0800' '{print $2}'| awk -F ' ' '{print $5}' | sort #對資料進行(ASCII)排序

去重,uniq -c 只會合併相鄰的記錄,所以在使用它之前,應該先進行排序

cat a.txt |awk -F '+0800' '{print $2}'| awk -F ' ' '{print $5}' | sort | uniq -c

再排序,得到 (次數 內容)的檔案, sort -k 1 -n -r 指定對第一行進行排序,-n 數字排序,以降序排列

cat a.txt |awk -F '+0800' '{print $2}'| awk -F ' ' '{print $5}' | sort | uniq -c | sort -k 1 -n -r

-----------------------------------

©著作權歸作者所有:來自51CTO部落格作者ttxsgoto的原創作品,如需轉載,請註明出處,否則將追究法律責任

awk、uniq、sort三個命令的基本用法

https://blog.51cto.com/ttxsgoto/1582213