linux的cut命令用法总结
要用到,来mark一下:
ubuntu@VM-0-15-ubuntu:~/taoge$catb.txt abc abcd ubuntu@VM-0-15-ubuntu:~/taoge$catb.txt|cut-c1 a a ubuntu@VM-0-15-ubuntu:~/taoge$catb.txt|cut-c2 b b ubuntu@VM-0-15-ubuntu:~/taoge$catb.txt|cut-c1-2 ab ab ubuntu@VM-0-15-ubuntu:~/taoge$catb.txt|cut-c1-3 abc abc ubuntu@VM-0-15-ubuntu:~/taoge$catb.txt|cut-c1-4 abc abcd ubuntu@VM-0-15-ubuntu:~/taoge$catb.txt|cut-c1-5 abc abcd ubuntu@VM-0-15-ubuntu:~/taoge$catb.txt|cut-c1-6 abc abcd ubuntu@VM-0-15-ubuntu:~/taoge$
常常配合awk使用。
cut命令可以按字节,字符,域来截取字串,在某些情况下使用cut,确实很方便,下面简单总结下:
1.按字符截取:(源字串:123:456:789)
1>截取第三个字符:
echo123:456:789|cut-c3 3
2>截取第三到第六之间的字符:
echo123:456:789|cut-c3-6 3:45
3>截取前三个字符
echo123:456:789|cut-c-3 123
4>提取第三个及其后面的所有字符
echo123:456:789|cut-c3- 3:456:789
5>提取第三到第六和第八到第十间的字符
echo123:456:789|cut-c3-6,8-10 3:45:78
小结下
>>这个“-”比较有意思,
在inx前,表示从字串投开始,
放在inx后,表示从idx开始到字串末尾,
在两个idx之间,表示从idx1到idx2。
>>还有这个“,”可以连接我们选择的不连续的域,
比如要取第1,3,5,7个字符:
echo123:456:789|cut-c1,3,5,7 1346
>>对于-b选项应该和-c选项差不多吧,就是单位不同而已(我没有像上面一样测试,只是我的理解)
对于-d选项需要配合着-f选项使用,-d是用来指定分隔符,-f用来指定提取第几个域的内容
echo123:456:789|cut-d:-f3 789
cut比较小巧,在适当的场景下使用效率很高,但是它不支持正则表达式,所以在复杂的情况下还是使用awk或者sed比较好!
[xxx@~]$cut--help Usage:cutOPTION...[FILE]... PrintselectedpartsoflinesfromeachFILEtostandardoutput. Mandatoryargumentstolongoptionsaremandatoryforshortoptionstoo. -b,--bytes=LISTselectonlythesebytes -c,--characters=LISTselectonlythesecharacters -d,--delimiter=DELIMuseDELIMinsteadofTABforfielddelimiter -f,--fields=LISTselectonlythesefields;alsoprintanyline thatcontainsnodelimitercharacter,unless the-soptionisspecified -n(ignored) --complementcomplementthesetofselectedbytes,characters orfields -s,--only-delimiteddonotprintlinesnotcontainingdelimiters --output-delimiter=STRINGuseSTRINGastheoutputdelimiter thedefaultistousetheinputdelimiter --helpdisplaythishelpandexit --versionoutputversioninformationandexit
Useone,andonlyoneof-b,-cor-f. EachLISTismadeupofone
range,ormanyrangesseparatedbycommas. Selectedinputiswritten
inthesameorderthatitisread,andiswrittenexactlyonce.
Eachrangeisoneof:
- N N'thbyte,characterorfield,countedfrom1
- N- fromN'thbyte,characterorfield,toendofline
- N-M fromN'thtoM'th(included)byte,characterorfield
- -M fromfirsttoM'th(included)byte,characterorfield
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对毛票票的支持。如果你想了解更多相关内容请查看下面相关链接