Linux cut命令

简介: 用途文本文件按列提取。特点过于简单,只能处理固定格式的分隔符,分隔符不能使用正则表达式。用法命令基本格式-b、-c、-f分别表示字节、字符、字段(即byte、character、fiel...

用途

文本文件按列提取。

特点

过于简单,只能处理固定格式的分隔符,分隔符不能使用正则表达式

用法

命令基本格式

  • -b、-c、-f分别表示字节、字符、字段(即byte、character、field);
  • list表示-b、-c、-f操作范围,-n常常表示具体数字;
  • file表示的自然是要操作的文本文件的名称;
  • delim(英文全写:delimiter)表示分隔符,默认情况下为TAB;
  • -s表示不包括那些不含分隔符的行(这样有利于去掉注释和标题)
cut option list file
cut -b list [-n] [file ...]
cut -c list [file ...]
cut -f list [-d delim][-s][file ...]

list 范围的表示方法

表示 意义
N 只有第N项
N- 从第N项一直到行尾
N-M 从第N项到第M项(包括M)
-M 从一行的开始到第M项(包括M)
- 从一行的开始到结束的所有项

实例

经典应用

Linux中提取所有用户
cut -f 1 -d ':' /etc/passwd
以:作为分割符,提取第一个字段

去掉开始的命令提示符

cut -c 8- usercount.pig
从第8个字符开始提取
原文件 usercount.pig

grunt> A = load '/data/20160518/1055/100/9_1463541300000/part-00000' using PigStorage('|');
grunt> B = foreach A generate $16 as ip;
grunt> C = group B by ip;
grunt> D = foreach C generate group,COUNT(B);
grunt> dump D;

处理后结果

A = load '/data/20160518/1055/100/9_1463541300000/part-00000' using PigStorage('|');
B = foreach A generate $16 as ip;
C = group B by ip;
D = foreach C generate group,COUNT(B);

去除标题,并替换分隔符

cut -f 1- -s --output-delimiter='|' table.txt

  • 由于默认分割符是 \t, 所以不需指定
  • -s 去除不含分隔符的行(通常是标题,空行)
  • 指定输出分割符
    原文件,cat table.txt
table

1       xiaohu
2       xiaoli
3       xiaowang
4       xiaoming

处理结果

1|xiaohu
2|xiaoli
3|xiaowang
4|xiaoming
目录
相关文章
|
15天前
|
Web App开发 Linux 网络安全
工作中常用到的Linux命令
工作中常用到的Linux命令
|
15天前
|
Web App开发 Java Linux
Linux之Shell基本命令篇
Linux之Shell基本命令篇
Linux之Shell基本命令篇
|
3天前
|
机器学习/深度学习 缓存 监控
linux查看CPU、内存、网络、磁盘IO命令
`Linux`系统中,使用`top`命令查看CPU状态,要查看CPU详细信息,可利用`cat /proc/cpuinfo`相关命令。`free`命令用于查看内存使用情况。网络相关命令包括`ifconfig`(查看网卡状态)、`ifdown/ifup`(禁用/启用网卡)、`netstat`(列出网络连接,如`-tuln`组合)以及`nslookup`、`ping`、`telnet`、`traceroute`等。磁盘IO方面,`iostat`(如`-k -p ALL`)显示磁盘IO统计,`iotop`(如`-o -d 1`)则用于查看磁盘IO瓶颈。
|
12天前
|
NoSQL Linux Shell
常用的 Linux 命令
常用的 Linux 命令
35 9
|
1天前
|
Linux 数据安全/隐私保护
Linux常用命令实例带注释
Linux常用命令实例带注释
13 0
|
1天前
|
Linux 开发工具 数据安全/隐私保护
Linux(19)常用解压命令记录
Linux(19)常用解压命令记录
6 0
|
3天前
|
Linux Perl
Linux系统替换字符串常用命令
请注意,`sed`命令可以非常强大,可以根据不同的需求使用不同的选项和正则表达式来进行更复杂的字符串替换操作。
16 0
|
5天前
|
安全 Linux 开发工具
Linux中可引起文件时间戳改变的相关命令
【4月更文挑战第12天】Linux中可引起文件时间戳改变的相关命令
12 0
|
7天前
|
域名解析 网络协议 Linux
Linux 中的 Nslookup 命令怎么使用?
【4月更文挑战第12天】
25 6
Linux 中的 Nslookup 命令怎么使用?
|
7天前
|
运维 网络协议 Unix
18.系统知识-Linux常用命令
18.系统知识-Linux常用命令