利用shell.awk.sed统计一个文件数据内容。

利用shell.awk.sed统计一个文件数据内容。某文件中有如下数据:
Real 1233 4566
Virrul 2345 6789
Real 5679 4566
统计输出格式如下:
Real####average
Real xxx

awk '{t=($2 + $3);a[$1]=(a[$1] + t)}END{for (i in a)print i,a[i]}' myfile

上记试试看 或许可以
温馨提示:内容为网友见解,仅供参考
无其他回答

怎么用shell的awk获取数据库一个info中code和name到shell变量中!l
name=`echo "${var}" | awk '{print $4}'` #默认是空格为分隔符,如果指定其他分隔符,可以用-F 参数。有什么具体的疑问,可以追问

请问用shell,或awk、sed,如何一行一行的输出一个文件,每行文件用...
然后1.sh !\/bin\/sh for list in `cat 1.txt`do echo $list echo ' ---'done 好了完成 本人q1028521938

利用shell脚本如何提取一个文件中某一特定行和下面若干行的内容
1、在linux目录\/root下建立一个txt文件,内容如下,使用|竖线分割,作为我们的实验数据样本。2、sed用法、sed-n'xp'data.txt;显示文件X行数据,获取第18行数据,即为sed-n'18p'data.txt。3、sed-n'开始行,结束行p'data.txt;显示文件X行到Y行的内容:命令:sed-n'10,18p'data.txt。4、hea...

shell脚本读取配置文件参数
1、 读取配置文件时,将注释符#标记的行和空行全部过滤 sed -E '\/^#.*|^ *$\/d' $env_file 。 2、 匹配指定参数相符的行并截取对应的值 awk -F "${param}=" "\/${param}=\/{print \\$2}" 。 3、 获得的结果可能有多个,取最后一个值 tail -n1 。 4、这3步都用 | 管道符连接,其作用是将当...

在linux下怎么使用shell脚本修改文本里的相关内容?
此函数接受两个参数:用户名和进程名。使用`ps`命令查找进程信息,通过`grep`过滤出所需进程,最后利用`sed`和`awk`提取进程ID。函数示例代码如下:bashfunction GetPID($username, $process_name) { ps -u $username -o pid,command | grep -v "total" | grep $process_name | awk '{print...

如何通过shell命令将日志文件中的多行内容显示为一行?
同楼上意见,一般应该是此类日志内容应该是一行的。如果真的不是一行可试试下面语句。没想出特好的方法。可供参考。awk --posix 'BEGIN{RS="(SQL|Number)"} \/The utility\/&&\/[0-9]{2}\\\/[0-9]{2}\\\/[0-9]{4}\/ {print "SQL"$0}' 日志文件 | sed "\/SQL\/{N;s\/\\n\/\/g}"...

怎样用sed或者awk显示一个文件的1,3,5,7,10,15行
我也给个思路吧 ——用sed根据地址范围截取文件内容,用Here documents方法添加新的多行内容,然后重组文件。具体步骤如下:1)截取test.xml文件起始行到行,保存到tmp文件;2)将要添加的内容根据变量值展开,附加写入tmp文件;3)截取test.x...

shell 判断一个文件有多少行
现在有一个a文件,共有55行 第一种:awk '{print NR}' a|tail -n1 55 第二种:begincwcw兄的这个:awk 'END{print NR}' a 55 第三种:grep -n "" a|awk -F: '{print '}|tail -n1 55 第四种:honbj兄的也不错:sed -n '$=' a 55 第五种 wc -l a|awk '{print }'...

sed&awk基本使用方法
总之,这个 sed 不错用啦!而且很多的 shell script 都会使用到这个指令的功能~ sed可以帮助系统管理员管理好日常的工作喔!要仔细的学习呢!awk 工具简介相较于 sed 常常作用于一整个行的处理, awk 则比较倾向于一行当中分成数个『字段』来处理。 因此,awk相当的适合处理小型的数据数据处理呢!awk 通常运作的模式...

shell脚本提取文档中的一个多位数,加一,返回
awk 'BEGIN{FS="=";OFS="="} NR==267{$3+=1;print}' data.mk 也可以,awk相当于一门小型语言,里面的语法类似C语法,支持直接做运算,还有一些内置函数。所以如果在文本处理的同时涉及运算的话,用awk可以一站式解决,更为方便。方法很多,下面这样也行:!\/bin\/bashnum=`sed -nr '267s\/....

相似回答
大家正在搜