cut命令 学习笔记

使用cut命令实现字符串截取

选项:

-b  ----> 字节 :-b 后面的列表指定字节位置(例如,-b1-72 将传递每行的前 72 个字节)。当 -b 和 -n 一起使用时,将调整 list,以便不会拆分多字节字符。

    echo "123456789" | cut -b 3          //output : 3           //截取处于第三个字节的字符

    echo "123456789" | cut -b -3         //output : 123         //从左边开始截取3个字符

    echo "123456789" | cut -b 3-5        //output : 345         //从左边开始截取3到5位的字符

    echo "123456789" | cut -b 3-         //output : 3456789     //从左边开始截取从第三位到末尾的字符

---------------------------------------------------------------------------------------------------------------------------------

-c  ----> 字符  :-c 后面的列表指定字符位置(例如,-c1-72 将传递每行的前 72 个字符)。

echo "123456789" |cut -c -7             //output : 1234567      //从左边开始截取7个字符

echo "123456789" |cut -c 7-9            //output : 789          //从左边开始截取7到9位的字符

---------------------------------------------------------------------------------------------------------------------------------

-f  ----> 域  [-f后面是需要保留的列的位置; -d后面是分隔符,用来分隔被截取的字符串] :下面的列表 -f 是假定在文件中用分隔符分隔的字段列表(请参见 -d );例如,-f1,7 仅复制第一个和第七个字段。 除非指定了 -s,否则没有字段分隔符的行将原封不动地传递(对于表副标题很有用)。

-d delim :-d 后面的字符是字段分隔符(仅限 -f 选项)。 默认值为选项卡。空格或其他对 shell 具有特殊含义的字符必须用引号括起来。delim 可以是多字节字符。

echo "1|2|3|4|5|6|7|8|9" | cut -f1,3,5,7 -d"|"   //output : 1|3|5|7

echo "1;2;3;4;5;6;7;8;9" | cut -f2,4,6 -d";"     //output : 2;4;6

echo "1;2;3;4;5;6;7;8;9" | cut -f2-4,9 -d";"     //output : 2;3;4;9

echo "1|2|3|4|5|6|7|8|9" | cut   -f3,5,7,9 -d"|"    //output :3|5|7|9    -f 后面数字的位置并不会影响输出结果的位置,都是从小到大输出

echo "1|2|3|4|5|6|7|8|9" | cut   -f9,5,7,3 -d"|"    //output :3|5|7|9     -f 后面数字的位置并不会影响输出结果的位置,都是从小到大输出

--------

-s :在 -f 选项的情况下禁止显示没有分隔符的行。除非指定,否则没有分隔符的行将原封不动地通过。

echo "1|2|3|4|5|6|7|8|9" | cut   -f1,3,5,7 -d";"   //原样输出:1|2|3|4|5|6|7|8|9

echo "1|2|3|4|5|6|7|8|9" | cut -s -f1,3,5,7 -d";"  //输出位空,因为没有";"出现在目前的字符串中

---------------------------------------------------------------------------------------------------------------------------------

-n 只能与 -b 一起使用

-d 只能与 -f 一起使用

-s 只能与 -f 一起使用

-------------------------------------------------------------

在线编辑运行器:

https://www.runoob.com/try/runcode.php?filename=helloworld&type=bash

=========================================================================

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值