1. 程式人生 > >[Shell命令] awk & cut 提取欄位

[Shell命令] awk & cut 提取欄位

1. awk

假設現有檔案test1,內容如下:

name=xiaoming
passwd=123456

要從中提取出使用者名稱和密碼:

# 提取使用者名稱
cat test1 | grep 'name' | awk -F '=' '{print $2}'
# 提取密碼
cat test1 | grep 'passwd' | awk -F '=' '{print $2}'

cat test1 | awk -F '=' '{print $2}'
xiaoming
123456

awk -F '=' '{print $2}' test1
xiaoming
123456

其他解釋:
awk命令的-F

選項表示以何種符號分割, $n表示第n個引數(分割後的第n個引數)

awk中的兩個術語:

記錄(預設就是文字的每一行)
欄位 (預設就是每個記錄中由空格或TAB分隔的字串)
$0就表示一個記錄,$1表示記錄中的第一個欄位。
一般 print $0就是列印整行內容($0前面不需要反斜槓),print $1表示只打印每行第一個欄位。

$ cat test2.txt
i am a girl
you are a boy
it is a bear

$ sed -n '2p' test2.txt | cut -d ' ' -f4
boy

$ head -n 2 test2.txt |cut -d
' ' -f4 girl boy $ head -n 2 test2.txt | tail -n 1 | cut -d ' ' -f4 boy $ awk '{print $1,$4}' test2.txt i girl you boy it bear $ awk -F ' ' '{print $4}' test2.txt girl boy bear $ awk -F ' ' 'NR==2{print $4}' test2.txt boy $ awk '{print NR}' test2.txt | tail -n1 3 $ awk '{print NR}' test2.txt 1
2 3 $ awk 'END{print NR}' test2.txt 3

2. cut

Linux cut命令用於顯示每行從開頭算起 num1 到 num2 的文字。

-d :自定義分隔符,預設為製表符。
-f :與-d一起使用,指定顯示哪個區域。

$ cat test2.txt
i am a girl
you are a boy
it is a bear

$ cat test2.txt | cut -d ' ' -f4
girl
boy
bear

相關推薦

[Shell命令] awk & cut 提取

1. awk 假設現有檔案test1,內容如下: name=xiaoming passwd=123456 要從中提取出使用者名稱和密碼: # 提取使用者名稱 cat test1 | gr

mysql命令語句來去除掉中空格字元的方法

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

shell命令-awk

|–awk命令列 awk的呼叫可以定義變數、提供程式、指定輸入檔案 awk [-F fs] [-v var=value … ] ‘program’ [ – ] [ var=value … ] [ file(s) ] awk [-F fs] [-v var=va

awk按照某個排列,求某個列的最大值最小值

file FFF;2011-10-1;2011-10-1 0:00 ;4.57389 FFF;2011-10-1;2011-10-1 0:15 ;4.33278 FFF;2011-10-2;2011-10-2 12:45;5.95446 FFF;2011-10-2;2011

Python 從MySQL 的表中提取

con = pymysql.connect(host='192.168.0.10', user='root', passwd='123456', db='living', port = 3306) # 連線 cur = con.cursor() sql_order = 's

shell命令-bc(數學運算/進制轉換)

用途 bc實際上是一種語言,支援任意精度的計算。 舉例 在終端執行bc命令,直接在bc環境中進行計算 [email protected]:~$ bc bc 1.06.95 Co

Python筆記從html中提取

def fun(): # url = 'http://quote.eastmoney.com/sh600010.html?from=BaiduAladdin' url_total = 'htt

Mongodb的億萬級資料集合中提取的所有不同值集合

對於網際網路公司來說,隨著業務的不斷髮展,後臺儲存的各種資料也會越來越多,在這篇文章中,簡單講述一下自己在工作過程中遇到的一個小的統計需求工作,希望對有需要的人有所幫助。 需求:需要統計我們後臺資料庫

分享一個提取的指令碼

公司做統計提取欄位的服務是C編譯出的bin檔案,經常core dump導致機器結束通話,深受其苦,自己寫了一個shell版的作為替代。 本來打算用awk實現, awk -F "[= ]" ‘{do something}’這樣,可是日誌欄位不固定(可能出現,可能不出現),

爬蟲平臺Crawlab核心原理--自動提取演算法

⚠注意: 可配置爬蟲現在僅在Python版本(v0.2.1-v0.2.4)可用,在最新版本Golang版本(v0.3.0)還暫時不

shell中字元提取命令awkcut的不同

shell程式設計中,用於字元提取或者擷取的命令有3個,分別是cut,awk,sed,嚴格的說,sed不能說字元擷取命令,他是字元替換命令,在這裡,我們總結一下cut和awk的不同: 1命令的使用格式不同 cut cut [選項] 檔名 ·選項可以

Linux命令提取指定關鍵字後面(或前面)----cut命令

1.提取等號前面欄位echo "name=usr" | cut -d '=' -f 12.提取等號後面欄位echo "name=usr" | cut -d '=' -f 2注備:# cut --helpBusyBox v1.26.2 (2018-05-23 10:28:21

[Shell]字元擷取命令cut, printf, awk, sed

【cut命令】   cut [選項] 檔案     -f 列號 ( --field 提取第幾列 )     -d 分隔符 ( --delimiter 按照指定分隔符分割列 )   vi user.txt   ( 行間分隔符為製表

shell命令拆分文字(按照行數、大小、值)

轉載:http://blog.sina.com.cn/s/blog_551d7bff0100szyt.html 拆分檔案(按行拆分 -l,按大小拆分 -b ,後面可加單位:b、k、m等)   split -l 3 a.txt spfile. 會在當前目錄生產3個檔案 spf

獲取文本中你須要的字段的 幾個命令 grep awk cut tr sed

string div line config class rip where ren lin 1,grep 2,awk 3,cut 4,tr 5,sed 實例1 獲取本地IP地址 /sbin/ifconfig -a|grep inet|

8.10 shell特殊符號cut命令 8.11 sort_wc_uniq命令 8.12 tee_tr_split命令 8.13 shell特殊符號下

8.10 shell特殊符號cut命令 8.11 sort_wc_uniq命令 8.12 tee_tr_split命令 8.13 shell特殊符號下8.10 shell特殊符號cut命令 8.11 sort_wc_uniq命令 8.12 tee_tr_split命令 8.13 shell特殊符號下

shell特殊符號cut命令,sort_wc_uniq命令,tee_tr_split命令

sort_wc_uniq shell tee_tr_split cut 筆記內容:l 8.10 shell特殊符號cut命令l 8.11 sort_wc_uniq命令l 8.12 tee_tr_split命令l 8.13 shell特殊符號下筆記日期:2017.8.16 8.10 shell特

shell特殊符號,cut,sort,wc,uniq,tee,tr,split命令

linuxLinux shell中的特殊符號*代表零個或多個任意字符,它的用法如下:#ls /tmp/4_6/test*/tmp/4_6/test1 /tmp/4_6/test22 /tmp/4_6/test333 ?只代表一個任意的字符,它的用法如下:#touch /tmp/4_6/test

8.10 shell特殊符號cut命令 8.11 sort_wc_uniq命令 8.12 tee

cut命令 shel uniq text http type 1.5 技術 sha 五周第五次課8.10 shell特殊符號cut命令8.11 sort_wc_uniq命令8.12 tee_tr_split命令8.13 shell特殊符號下8.10 shell特殊符號cut

shell特殊符號cut ,sort_wc_uniq,tee_tr_split命令shell特殊符號

ef7 tee log vpd 大全 使用 net img dbd 8.10 shell特殊符號cut命令\ 脫義字符 管道符相關的幾個命令cut -d命令的用法cut -c命令的用法sort經常要跟uniq結合使用sort的作 用是排序,先從特殊符號開始,再到數字,再