分享
 
 
 

请问如何抽取特征字的下一行

王朝other·作者佚名  2008-05-18
窄屏简体版  字體: |||超大  

在AIX上想看看各process占用的内存大小,用svmon -P看。

但是这样显示的内容太多了,我只需要出现"PID"那一行的下一行就够了。

但是这一行里只有数据,没有特征字,只能依靠上一行的特征字来区分。

用svmon -P|grep PID以后又应该怎么写呢?

请指点。谢谢。

编辑文件awkfile

#!/usr/bin/awk -f

BEGIN {temp=0}

{if(temp!=0} print}

{temp=index($0,"PID")}

然后chmod 700 awkfile

svmon -P | awkfile

OVER!

呵呵,我这里可是测试通过的

with awk:

svmon -P|awk '/PID/{getline;print}'

with sed:

svmon -P|sed '/PID/{N:p;}'

果然比我的简单,pfpf

用sed的,我在bash下怎么报错呀?

我在cygwin的bash下试过.没问题啊,这么简单的语法.

奇怪,{N:p;}是什么意思呀,手册里面没有找到

N是到下一行,p是显示啊.

呵呵,我明白了,你的N后面应该是;,但是写成:了,所以报错

另外,错误虽然没有了

结果有点问题

$ps

PID TTY TIME CMD

24451 pts/8 0:00 csh

25202 pts/8 0:00 ps

$ps | sed '/PID/{N;p;}'

PID TTY TIME CMD

24451 pts/8 0:00 csh

PID TTY TIME CMD

24451 pts/8 0:00 csh

25203 pts/8 0:00 ps

25204 pts/8 0:00 sed

why?

要加 -n啊.

very good! 非常实用。

那不止下一行呢,比如下x行呢

svmon -P|awk '/PID/ {for(i=0;i<x;i++) {getline;print}}'

svmon -P|grep -n PID|awk '{cmd=sprintf("svmon -P|head -%d|tail -1",$1); system(cmd)}'

请多指教

我测试了一下Hell的脚本,是打印带有PID的那一行

需求是打印PID行的下n行

怎么样,改进一下吧

svmon -P|grep -n PID|awk '{cmd=sprintf("svmon -P|head -%d|tail -%d",$1+1,n); system(cmd)}'

svmon -P|grep -n PID|awk '{cmd=sprintf("svmon -P|head -%d|tail -%d",$1+n,n); system(cmd)}'

grep has the function to get the line after the designed lines.

grep -A2 PID yourfile

grep -A2 PID yourfile |grep -v PID

我的意思是不想要一个文件中包含特征字符串的行和其前后几行

我想肯定有更简单的方法,请赐教

#本程序将按给定的字符串在一文件中将其前后若干行删除

#在h80机器上测试通过,对原有10万行的文本文件,删除其中8万行,

#每个特征串删除前后共4行,即共有2万个指定字符串需删除,用时6分钟

cp comlog021211 abab

# M 前M行

# N 后N行

# string1 指定字符串

M=3

N=0

string1="发送文件通讯失败"

# count 为每次向下走的步数

count=`expr $M + $N + 1`

count_ini=0

eval grep -n $string1 abab | awk -F ":" '{print $1}' > acac

#为了删除最后一行,在后在加一行

count_tmp=`tail -1 acac`

echo $count_tmp >> acac

#为bbb,pre赋值

count_tmp=`head -1 acac`

bbb=$count_tmp

pre=`expr $count_tmp - $count`

while read -r aaa

do

ccc=`expr $pre + $count`

if [ $aaa != $ccc ]

then

CCC=`expr $bbb - $count_ini - $M`

DDD=`expr $pre - $count_ini + $N`

eval sed '${CCC},${DDD}d' abab > adad

count_ini=`expr $count_ini + $DDD - $CCC + 1`

cp adad abab

bbb=$aaa

fi

pre=$aaa

done < acac

我想肯定有更简单的方法,请赐教

#本程序将按给定的字符串在一文件中将其前后若干行删除

#在h80机器上测试通过,对原有10万行的文本文件,删除其中8万行,

#每个特征串删除前后共4行,即共有2万个指定字符串需删除,用时6分钟

cp comlog021211 abab

# M 前M行

# N 后N行

# string1 指定字符串

M=3

N=0

string1="aaaaaaaaaaaaa"

# count 为每次向下走的步数

count=`expr $M + $N + 1`

count_ini=0

eval grep -n $string1 abab | awk -F ":" '{print $1}' > acac

#为了删除最后一行,在后在加一行

count_tmp=`tail -1 acac`

echo $count_tmp >> acac

#为bbb,pre赋值

count_tmp=`head -1 acac`

bbb=$count_tmp

pre=`expr $count_tmp - $count`

while read -r aaa

do

ccc=`expr $pre + $count`

if [ $aaa != $ccc ]

then

CCC=`expr $bbb - $count_ini - $M`

DDD=`expr $pre - $count_ini + $N`

eval sed '${CCC},${DDD}d' abab > adad

count_ini=`expr $count_ini + $DDD - $CCC + 1`

cp adad abab

bbb=$aaa

fi

pre=$aaa

done < acac

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有