阅读背景:

shell用法(包括awk sed grep eval expr等)

来源:互联网 

1:取出文件中的第i行到第j行:awk 'NR>=i && NR<=j {print

1:取出文件中的第i行到第j行:awk 'NR>=i && NR<=j {print $0}' filename

2:vi精确查找:\<keyValue\>

3:指定分隔符:awk '{FS="\t"} {print $2}' filename

4:数值运算:

x=5;

let x=$x+1;

#或者

x=`expr $x + 1`   #expr 需要参数之间有空格

5:使用变量来引用shell脚本的任意参数

for ((i=1;i<$#;i++))

do

eval currParam=\$$i;

#引用当前变量

#echo "${currParam}"

done

6:awk中引用shell变量

awk '{print $'"${var}"'}'

其中 print 后的符号顺序为$、单引号、双引号、${var}、双引号、单引号


7:提取文本中两匹配行之间内容

start=0
while read line
do
if [ `echo $line|grep “start flag”|wc -l` -eq 1 ];then

start=1

continue

fi

if [ `echo $line|grep "end flag"|wc -l` -eq 1 ];then

start=0

continue

fi

if [ $start -eq 1 ];then

echo $line

fi

done<file


8.awk的输出不打印第一列

awk '{sub(/^[^[:space:]]*[[:space:]]+/,"");print}' test.txt

或者awk '{$1="";print $0}' test.txt



}' filename1:取出文件中的第i行到第j行:awk 'NR>=i && NR<




你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: