读书人

关于shell编程的文本处理,该怎么解决

发布时间: 2012-04-21 14:34:44 作者: rapoo

关于shell编程的文本处理
有一行文本如下:
int n,i,s[10],a,j;

如何在shell程序中提取到10,然后保存到变量中?

[解决办法]
a=$(echo "int n,i,s[10],a,j;"|awk -F'\\[|\\]' '{print $2}')

把结果赋值给变量a

[解决办法]
#! /bin/sh

str=`echo "int n,i,s[101],a,j;" | grep -o "\[.*\]"`
str=`echo ${str:1:${#str}-2}`
echo $str
[解决办法]
grep -oP '(?<=\s[)\d+'
[解决办法]
$ b=$(echo "int n,i,s[10],a,j;"|sed 's/[^0-9]*\([0-9]*\).*/\1/');echo $b
10

读书人网 >UNIXLINUX

热点推荐