博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
shell之使用cut切割文本文件
阅读量:4958 次
发布时间:2019-06-12

本文共 1147 字,大约阅读时间需要 3 分钟。

我们知道可以通过工具grep或egrep按行筛选记录,这里我们可以通过cut工具对文本按列进行切分,它可以指定定界符,linux下制表符是默认的定界符。

#cut -f 2,3 textfile

这个命令可以显示textfile文件的第2、3列。

例如:有文件如下:

# cat dept

10 ACCOUNTING NEW YORK

20 RESEARCH DALLAS

30 SALES CHICAGO

40 OPERATIONS BOSTON

1)# cut -f 2,3 dept

ACCOUNTING NEW YORK

RESEARCH DALLAS

SALES CHICAGO

OPERATIONS BOSTON

2)# cut -s -f 2,3 dept

ACCOUNTING NEW YORK

RESEARCH DALLAS

SALES CHICAGO

OPERATIONS BOSTON

其中-s选项可以过滤掉没有按照指定定界符的行。

3)# cut -s -f1 --complement dept

ACCOUNTING NEW YORK

RESEARCH DALLAS

SALES CHICAGO

OPERATIONS BOSTON

使用-f1 --complement选项输出结果不显示第1行。

4)# cut -s -d":" -f1,2,3,4,5,6,7  dept

root:x:0:0:root:/root:/bin/bash

spark:x:481:480:Spark:/var/lib/spark:/sbin/nologin

hue:x:480:479:Hue:/usr/lib/hue:/bin/false

对于不是按照标准定界符分隔的文件,可以使用-d参数指定定界符。

通过指定字段、字符、字节范围进行切割:

此种方法依赖于下表中的内容:

参数

说明

N-

N-M

-M

从第n个字符、字节、字段开始至行尾

从第n个字符、字节、字段至第m(包含)字符、字节、字段

从第1个字符、字节、字段开始至第m个字符、字节、字段

-b

-c

-f

表示字节

表示字符

表示字段

--output-delimiter

指定输出定界符

例如:

# cat cuttext

qwertyuiopasdfghjkl

qwertyuiopasdfghjkl

Qwertyuiopasdfghjkl

1)# cut -c1-5,6-10 cuttext --output-delimiter ","

qwert,yuiop

qwert,yuiop

qwert,yuiop

转载于:https://www.cnblogs.com/wcwen1990/p/7027999.html

你可能感兴趣的文章
线性回归决定系数R^2
查看>>
POJ 2536 匈牙利算法
查看>>
JVM jstat 详解
查看>>
Java(C#)基础差异-数组
查看>>
DigitalOcean中安装whois
查看>>
I2C
查看>>
koa2服务端使用jwt进行鉴权及路由权限分发
查看>>
利用按位运算符轻松管理权限
查看>>
将序列分成若干块的辅助类 ChunkHelper
查看>>
wmap的具体步骤
查看>>
测试 | 信用卡号验证
查看>>
数据和C
查看>>
mysql高可用方案MHA介绍
查看>>
java中在类的内部定义接口有什么好处?这和在外部直接定义有什么区别?
查看>>
Java中的基本概念(PO,VO,POJO,DTO,DAO)
查看>>
locked by transaction
查看>>
正则表达式
查看>>
自定制异步非阻塞web框架
查看>>
推荐几个jQuery插件
查看>>
终止脚本运行
查看>>