cut命令如何在linux中使用?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
要用到,来mark一下:
ubuntu@VM-0-15-ubuntu:~/taoge$ cat b.txt abc abcd ubuntu@VM-0-15-ubuntu:~/taoge$ cat b.txt | cut -c 1 a a ubuntu@VM-0-15-ubuntu:~/taoge$ cat b.txt | cut -c 2 b b ubuntu@VM-0-15-ubuntu:~/taoge$ cat b.txt | cut -c 1-2 ab ab ubuntu@VM-0-15-ubuntu:~/taoge$ cat b.txt | cut -c 1-3 abc abc ubuntu@VM-0-15-ubuntu:~/taoge$ cat b.txt | cut -c 1-4 abc abcd ubuntu@VM-0-15-ubuntu:~/taoge$ cat b.txt | cut -c 1-5 abc abcd ubuntu@VM-0-15-ubuntu:~/taoge$ cat b.txt | cut -c 1-6 abc abcd ubuntu@VM-0-15-ubuntu:~/taoge$
常常配合awk使用。
cut命令可以按字节,字符,域来截取字串,在某些情况下使用cut,确实很方便,下面简单总结下:
1.按字符截取:(源字串:123:456:789)
1>截取第三个字符:
echo 123:456:789 | cut -c3 3
2>截取第三到第六之间的字符:
echo 123:456:789 | cut -c3-6 3:45
3>截取前三个字符
echo 123:456:789 | cut -c-3 123
4>提取第三个及其后面的所有字符
echo 123:456:789 | cut -c3- 3:456:789
5>提取第三到第六和第八到第十间的字符
echo 123:456:789 | cut -c3-6,8-10 3:45:78
小结下
>>这个“-”比较有意思,
在inx前,表示从字串投开始,
放在inx后,表示从idx开始到字串末尾,
在两个idx之间,表示从idx1到idx2。
>>还有这个“,”可以连接我们选择的不连续的域,
比如要取第1,3,5,7个字符:
echo 123:456:789 | cut -c1,3,5,7 1346
>>对于-b选项应该和-c选项差不多吧,就是单位不同而已(我没有像上面一样测试,只是我的理解)
对于-d选项需要配合着-f选项使用,-d是用来指定分隔符,-f用来指定提取第几个域的内容
echo 123:456:789 | cut -d : -f 3 789
cut比较小巧,在适当的场景下使用效率很高,但是它不支持正则表达式,所以在复杂的情况下还是使用awk或者sed比较好!
[xxx@~]$ cut --help Usage: cut OPTION... [FILE]... Print selected parts of lines from each FILE to standard output. Mandatory arguments to long options are mandatory for short options too. -b, --bytes=LIST select only these bytes -c, --characters=LIST select only these characters -d, --delimiter=DELIM use DELIM instead of TAB for field delimiter -f, --fields=LIST select only these fields; also print any line that contains no delimiter character, unless the -s option is specified -n (ignored) --complement complement the set of selected bytes, characters or fields -s, --only-delimited do not print lines not containing delimiters --output-delimiter=STRING use STRING as the output delimiter the default is to use the input delimiter --help display this help and exit --version output version information and exit
Use one, and only one of -b, -c or -f. Each LIST is made up of one
range, or many ranges separated by commas. Selected input is written
in the same order that it is read, and is written exactly once.
Each range is one of:
N N'th byte, character or field, counted from 1
N- from N'th byte, character or field, to end of line
N-M from N'th to M'th (included) byte, character or field
-M from first to M'th (included) byte, character or field
关于cut命令如何在linux中使用问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。