Linux管理员 - cut 命令



cutgrep 是 CentOS 管理员最有用和最常用的两个命令。cut对于处理分隔文件(例如Linux配置文件、Linux首选项文件和CSV文件)非常有用。

开关 操作
-b 仅选择这些字节
-c 仅选择这些字符
-d 使用DELIM代替TAB作为字段分隔符
-s 仅打印分隔行

大多数情况下,cut 用于从文本文件中提取特定行。之前,我们使用cut 获取/etc/passwd中所有用户的列表:

[root@centosLocal centos]# cut -d":" -f1 /etc/passwd  
root 
bin 
daemon 
adm 
lp 
sync
shutdown

以上是从/etc/passwd中提取的系统用户列表。

某些Linux实用程序和应用程序实际上保存了cut功能的输出。以下是nmap输出的示例。

[root@centosLocal centos]# grep open ./http_scans.txt  
Host: 10.58.52.67 ()   Ports: 80/open/tcp//http/// 
Host: 10.58.52.132 ()  Ports: 80/open/tcp//http/// 
Host: 10.58.52.133 ()  Ports: 80/open/tcp//http/// 
Host: 10.58.52.56 ()   Ports: 80/open/tcp//http/// 
Host: 10.58.52.71 ()   Ports: 80/open/tcp//http/// 
Host: 10.58.52.132 ()  Ports: 80/open/tcp//http///

使用cut,我们可以快速生成一个内部系统列表,这些系统侦听端口80以响应外部请求。

[root@centosLocal centos]# grep open ./http_scans.txt | cut -d" " -f2 >
open_http_servers.txt  
[root@centosLocal centos]# head open_http_servers.txt  
10.58.52.17 
10.58.52.29 
10.58.52.30 
10.58.52.36 
10.58.52.59 
10.58.53.89 
10.58.53.100 
10.58.54.103 
10.58.54.148 
10.58.54.152

[root@centosLocal centos]#

Cut也可以按字符数使用。

[root@centosLocal centos]# cut -c 1,2,3,4,5,6,7,8 lanIP-range.txt  
10.58.52 
10.58.52 
10.58.52 
10.58.52 
10.58.52 
10.58.52
10.58.53 
10.58.53 
10.58.53 
10.58.53 
10.58.53 
10.58.54 
10.58.54 
10.58.54 
10.58.54 
10.58.54 
10.58.54 
10.58.54 
10.58.54 
10.58.54 
10.58.54 
10.58.54 
10.58.54 
10.58.54 
10.58.54 
10.58.54 
10.58.54

[root@centosLocal centos]#

cut是一个CentOS管理员几乎每天都会使用的命令。它是解析文本和某些二进制文件的救星。

basic_centos_linux_commands.htm
广告