cut的使用

cut使用案例

1.按字节切割
tail -n 1 /etc/passwd | cut -b 1-10,15-20(获取密码文件下的第1到10个字符以及第15到20个字符)`一个汉字算三个字节`

2.指定分隔符切割
tail -n 1 /etc/passwd | cut -d : -f 1,5(以:分割,获取第一个和第五个域)
ls -l | cut -d " " -f 1(以空格分割,取第一个域得字符)

3.按字符切割
ls -l | cut -c 1-10(获取文件的第一个字符到第十个字符)`中文字符和空格都算一个字符`

cut参数说明

用法:cut [选项]... [文件]...
从每个文件中输出指定部分到标准输出。

长选项必须使用的参数对于短选项时也是必需使用的。
  -b, --bytes=列表        只选中指定的这些字节
  -c, --characters=列表        只选中指定的这些字符
  -d, --delimiter=分界符    使用指定分界符代替制表符作为区域分界
  -f, --fields=LIST     选择部分字段,如果不制定-s分隔符的参数,直接打印出没有不包含分隔符的字符

  -n                     -b: 不分裂的多字节字符和-b一起使用(`汉字是三个字节,如果直选中一个字节,也不进行分割,直接显示汉字`)
      --complement        补全选中的字节、字符或域
  -s, --only-delimited        不打印没有包含分界符的行
      --output-delimiter=字符串    使用指定的字符串作为输出分界符,默认采用输入
                的分界符
      --help        显示此帮助信息并退出
      --version        显示版本信息并退出

仅使用f -b, -c 或-f 中的一个。每一个列表都是专门为一个类别作出的,或者您可以用逗号隔
开要同时显示的不同类别。您的输入顺序将作为读取顺序,每个仅能输入一次。
每种参数格式表示范围如下:
    N    从第1 个开始数的第N 个字节、字符或域
    N-    从第N 个开始到所在行结束的所有字符、字节或域
    N-M    从第N 个开始到第M 个之间(包括第M 个)的所有字符、字节或域
    -M    从第1 个开始到第M 个之间(包括第M 个)的所有字符、字节或域

当没有文件参数,或者文件不存在时,从标准输入读取

应用

取出eth0对应的ip地址?
ifconfig eth0 | grep "inet addr" | cut -d ":" -f2 | cut -d " " -f1
坚持原创技术分享,您的支持将鼓励我继续创作!