参考链接: http://c.biancheng.net/view/1120.html
从 截去 的角度上说,总结为: 左#右%
从 截取 的角度上说,反过来。
其中,string 表示要截取的字符,chars 是指定的字符(或者子字符串), * 是通配符的一种,表示任意长度的字符串。
*chars 连起来使用的意思是:忽略左边的所有字符,直到遇见 chars(chars 不会被截取)。
如果希望直到最后一个指定字符(子字符串)再匹配结束,那么可以使用##,具体格式为:
2.使用 % 截取左边字符
使用%号可以截取指定字符(或者子字符串)左边的所有字符,具体格式如下:
请注意 * 的位置,因为要截取 chars 左边的字符,而忽略 chars 右边的字符,所以*应该位于 chars 的右侧。其他方面%和#的用法相同,这里不再赘述,仅举例说明:
# cat /proc/meminfo |grep -w "MemTotal" MemTotal: 32781228 kB 使用tr命令截取字符串 # cat /proc/meminfo |grep -w "MemTotal" | tr -cd "[0-9]" 32781228可以用awk、sed、tr、perl都能实现set s = '"stratum":{"accepted_shares":1,"algorithm"'
set a = `echo $s | awk -F '["/:]' '{print $4}'`
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)