注: 部分概念介绍来源于网络
字符串截取(cut)
-b :以字节为单位进行分割。这些字节位置将忽略多字节字符边界,除非也指定了 -n 标志。
-c :以字符为单位进行分割。
-d :自定义分隔符,默认为制表符。
-f :与-d一起使用,指定显示哪个区域。
-n :取消分割多字节字符。仅和-b标志一起使用。如果字符的最后一个字节落在由-b标志的List参数指示的范围之内,该字符将被写出;否则,该字符将被排除。
-b
截取字符串中的第2和第5个字节,多个定位之间用逗号隔开
echo "abcdefg"|cut -b 2,5
输出:be
截取字符串11-14位置的字符
echo "abcdefghijklmn" | cut -b 11-14
输出:klmn
截取前三个字符(包括第三个字符)
echo "abcdefg" | cut -b -3
截取第三个字符后所有的(包括第三个字符)
echo "abcdefg" | cut -b 3-
-d
cut命令用于列提取,默认分隔符是tab键。
选项:-d指定分隔符,-f指定提取第几列
以#作为分隔符输出第一个#前的区域1的东西,输出区域2的东西
echo "yarn application#name=li#age=3 | cut -d \% -f 1
输出:yarn application
echo "CPU: busy 14% (system=10% user=3% nice=0% idle=85%)" | cut -d \% -f 2
输出:name=li
echo "CPU: busy 14% (system=10% user=3% nice=0% idle=85%)" | cut -b 6-16 | cut -d \% -f 1
输出:application
echo "CPU: busy 14% (system=10% user=3% nice=0% idle=85%)" | cut -b 6-16
输出:application#