cut是一個針對行的數據選取命令
SYNOPSIS
cut [OPTION]... [FILE]...
OPTION
-b 以字節為單位進行分割,如果是多字節的話就需要注意了
-c 以字符為單位進行分割
-d 自定義分割符,默認為制表符
-f 顯示哪個區域,與-d一起使用
-n 表示一個范圍,可與-b和-c一起使用
-s 表示不包括那些不含分隔符的行
愉快的就開始吧
1 [root@iZ288fgkcpkZ cut]# tail -5 string.txt
2 8063952 冰川裡的哈密瓜 職員 北京市 90後已婚小鮮肉 406 1 1 1438684854
3 7004053 可樂的廚房 互聯網 北京市 90後幸福小咖 717 1 1 1438684854
4 8658245 蛋包飯喵喵 編輯 北京市 90後北京菇涼 465 1 1 1438684854
5 8427541 愛學習的牛媽 自由職業 安徽省 崇尚自由的幸福媽咪 466 1 1 1438684855
6 8724635 四毛的娘親 全職媽媽 河南省 80後文藝娘親 467 1 1 1438684856
7 [root@iZ288fgkcpkZ cut]#
取出id
[root@iZ288fgkcpkZ cut]# tail -5 string.txt | cut -b -7
8063952
7004053
8658245
8427541
8724635
[root@iZ288fgkcpkZ cut]# tail -5 string.txt | cut -b 1-7
8063952
7004053
8658245
8427541
8724635
[root@iZ288fgkcpkZ cut]# tail -5 string.txt | cut -b 7,6,5,1-4
8063952
7004053
8658245
8427541
8724635
[root@iZ288fgkcpkZ cut]#
需要說下-n
n 只取出第n個字節/字符/字段
n- 取出第n個字節/字符/字段(包括n)到行尾
-n 取出第一個字節/字符/字段到第n個字節/字符/字段(包括n)
n-m 取出第n個字節/字符/字段(包括n)到第m個字節/字符/字段(包括m)
n,m 取出第n個字節/字符/字段,取出第m個字節/字符/字段
為什麼上面最後一個列子並不是按照我寫的順序取出來的? 因為會先將其排序
取出昵稱第一個字符
[root@iZ288fgkcpkZ cut]# tail -5 string.txt | cut -b 9,10,11
冰
可
蛋
愛
四
[root@iZ288fgkcpkZ cut]# tail -5 string.txt | cut -b 9,11,10
冰
可
蛋
愛
四
[root@iZ288fgkcpkZ cut]# tail -5 string.txt | cut -c 9
冰
可
蛋
愛
四
[root@iZ288fgkcpkZ cut]#
取出整個昵稱呢?
[root@iZ288fgkcpkZ cut]# tail -5 string.txt |cut -f 2
冰川裡的哈密瓜
可樂的廚房
蛋包飯喵喵
愛學習的牛媽
四毛的娘親
[root@iZ288fgkcpkZ cut]# tail -5 string.txt| sed 's/\t/\s/g' |cut -d \s -f 2
冰川裡的哈密瓜
可樂的廚房
蛋包飯喵喵
愛學習的牛媽
四毛的娘親
[root@iZ288fgkcpkZ cut]#
如果指定了分割符,但是文本中有不包含分割符的行呢?
修改文本
[root@iZ288fgkcpkZ cut]# tail -5 string.txt
7004053 可樂的廚房 互聯網 北京市 90後幸福小咖 717 1 1 1438684854
8658245 蛋包飯喵喵 編輯 北京市 90後北京菇涼 465 1 1 1438684854
8427541 愛學習的牛媽 自由職業 安徽省 崇尚自由的幸福媽咪 466 1 1 1438684855
8724635 四毛的娘親 全職媽媽 河南省 80後文藝娘親 467 1 1 1438684856
8523728亮晶晶媽全職媽媽廣東省70後幸福寶媽1318111438684854
[root@iZ288fgkcpkZ cut]#
還是取出昵稱列,用-s可以將不包含分割符的行排除出去
[root@iZ288fgkcpkZ cut]# tail -5 string.txt| cut -f 2
可樂的廚房
蛋包飯喵喵
愛學習的牛媽
四毛的娘親
8523728亮晶晶媽全職媽媽廣東省70後幸福寶媽1318111438684854
[root@iZ288fgkcpkZ cut]# tail -5 string.txt| sed 's/\t/\s/g' |cut -d \s -f 2
可樂的廚房
蛋包飯喵喵
愛學習的牛媽
四毛的娘親
8523728亮晶晶媽全職媽媽廣東省70後幸福寶媽1318111438684854
[root@iZ288fgkcpkZ cut]# tail -5 string.txt| sed 's/\t/\s/g' |cut -sd \s -f 2
可樂的廚房
蛋包飯喵喵
愛學習的牛媽
四毛的娘親
[root@iZ288fgkcpkZ cut]#