cut
<h2>3.10 cut</h2>
<h6>1.cut用法</h6>
<p>切割获取</p>
<ul>
<li>支持单字符分割</li>
<li>不会修改源文件,安全</li>
</ul>
<pre><code>用法:cut [选项] [文件]
-b, --bytes=列表 只选中指定的这些字节
-c, --characters=列表 只选中指定的这些字符
-d, --delimiter=分界符 使用指定分界符代替制表符作为区域分界
-f, --fields=LIST
--complement 补全选中的字节、字符或域
-s, --only-delimited 不打印没有包含分界符的行
--output-delimiter=字符串 使用指定的字符串作为输出分界符,默认采用输入
的分界符</code></pre>
<h6>2.切割管道数据</h6>
<pre><code>[root@centos02 ~]# who
root tty1 2019-04-20 03:07
root pts/0 2019-04-20 03:08 (192.168.126.1)
root pts/1 2019-04-20 03:26 (192.168.126.1)
例子:
取第一和第三个字符
who | cut -c 1,3
取第一到第三个字符
who | cut -c -3
取第1到第3个字符,和第10个字符
who | cut -c -3,10
取第3个到最后一个
who | cut -c 3-</code></pre>
<h6>3.切割文件数据</h6>
<pre><code>1363157985066 13726230503 00‐FD‐07‐A4‐72‐B8:CMCC 120.196.100.82 i02.c.aliimg.com 24 27 2481 24681 200
1363157995052 13826544101 5C‐0E‐8B‐C7‐F1‐E0:CMCC 120.197.40.4 4 0 264 0 200
1363157991076 13926435656 20‐10‐7A‐28‐CC‐0A:CMCC 120.196.100.99 2 4 132 1512 200
1363154400022 13926251106 5C‐0E‐8B‐8B‐B1‐50:CMCC 120.197.40.4 4 0 240 0 200
1363157983019 13719199419 68‐A1‐B7‐03‐07‐B1:CMCC‐EASY 120.196.100.82 4 0 240 0 200
1363157984041 13660577991 5C‐0E‐8B‐92‐5C‐20:CMCC‐EASY 120.197.40.4 s19.cnzz.com 站点统计 24 9 6960 690 200
1363157973098 15013685858 5C‐0E‐8B‐C7‐F7‐90:CMCC 120.197.40.4 rank.ie.sogou.com 搜索引擎 28 27 3659 3538 200
例子:
【取1到11个字符】
cut -c 1-11 2.log
【用分隔符方式取得ip地址】
取第2个
cut -d':' -f '2' 2.log
取第2个和第4个
cut -d':' -f '2,4' 2.log (-d -f配合使用)
取第3个到最后一个
cut -d':' -f 3- 2.log
取第1个到第3个
cut -d':' -f -3 2.log
取第1个到第3个,还有第5个
cut -d':' -f -3,5 2.log</code></pre>