Linux cut 命令

语法

cut 命令的语法如下

cut OPTION... [FILE]...

cut 命令会把输入源 FILE 的每一行中的选中部分,进行打印输出。

如果省略 FILE 参数,或者 FILE 参数为 - , 那么 cut 命令会从标准输入读取。


基本使用

cut 命令比较简单,只需要掌握两个关键的选项,如下

  1. -d 选项指定分隔符。但是默认的分隔符是 TAB ( 水平制表符 ) 。
  2. -f 选项指定打印第 N 个字段(基于1)。

例如,可以通过管道打印 /etc/passwd 文件中的用户名,命令如下

cat /etc/passwd | cut -d ':' -f 1

-d ':' 指定分隔符为分号,-f 1 只打印第一个字段,也就是用户名。


进阶使用

刚才的例子只是一个开胃小菜,cut 命令还有一些需要注意的小细节。

首先,如果对于某一行,它不包含 cut 命令 -d 选项指定的分隔符,那么默认会打印这一行,因为这一整行就代表一个字段。我们可以通过 指定-s 选项,对于那些不包含指定分隔符的行,不打印。

其次,指定打印的字段其实是一个范围,有如下几种情况

  1. -f 1,3 表示只打印第一和第三个字段。
  2. -f 1-3 表示打印第一到第三个字段。
  3. -f 3 表示只打印第三个字段。
  4. -f 1- 表示打印第一个到最后一个字段。

例如,我们可以打印 /etc/passwd 文件中的用户名以及这用户使用的 shell 类型

cat /etc/passwd | cut -d ':' -f 1,7

最后,cut 命令还可以通过 --output-delimiter=STRING 指定输出的分割符,例如上面读取用户和 shell 类型的命令,输出结果是以 -d ':' 指定的分隔符分割的,我们可以通过 --output-delimiter 选项指定输出的分隔符为空格

cat /etc/passwd | cut -d ':' -f 1,7 --output-delimiter=' '
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值