文件: 20040901|林|123|英语|90|初一|一班| 20040901|林|123|数学|95|初一|一班| 输出格式为: 学校: 一中 年段:初一 班级:一班 入学日期:20040901 姓名:林 学好:123 课程名称 成绩 -------------------------------------------------------------------------------- 英语 90 数学 95 -------------------------------------------------------------------------------- ...
by 阿龟子 - Shell - 2004-10-21 23:45:20 阅读(794) 回复(0)
[oracle@HBTEST tmp01]$ cat 1.txt 1,2,3,4 1,2,3,4 2,2,3,4 2,2,3,4 3,2,3,4 4,2,3,4 [oracle@HBTEST tmp01]$ cat 1.txt | awk -F\, '{if(a==$1){$1="";print $0} > else{print $0;a=$1}}' > 2.txt [oracle@HBTEST tmp01]$ cat 2.txt 1,2,3,4 2 3 4 2,2,3,4 2 3 4 3,2,3,4 4,2,3,4 为什么当第一个域被置为空后,分割符号会被去掉呢,如果想保留这个分割符号,应该怎么写,多谢.
文件: 20040901|林|123|英语|90|初一|一班| 20040901|林|123|数学|95|初一|一班| 输出格式为: 学校: 一中 年段:初一 班级:一班 入学日期:20041101 姓名:林 学好:123 课程名称 成绩 -------------------------------------------------------------------------------- 英语 90 数学 ...
文件:\r\n20040901|林|123|英语|90|初一|一班|\r\n20040901|林|123|数学|95|初一|一班|\r\n\r\n输出格式为:\r\n\r\n学校: 一中 年段:初一 班级:一班 \r\n入学日期:20041101\r\n姓名:林\r\n学好:123\r\n课程名称 成绩\r\n--------------------------------------------------------------------------------\r\n英语 90\r\n数...
我现在有一个文件:1.txt 232344434343434 www.chinaunit.com 232232332340003 www.linux.com 我现在awk '{print $1+100}' 1.txt 发觉awk自动用科学记数法给我处理了,显示为2.3e+10,但是我不想得到这种格式,请问我应该如何处理?
$cat f2 stlr ttyp912 3:52pm 367:47 - - tset -m scoansi:vt100 -m :?vt100 epr ttyp328 6:11pm 149:27 - - -ksh stlr ttyp572 3:34pm 296:05 - - -ksh root ttyp4 2:49pm 440:48 - - - root ttyp5 2:50pm 440:48 - - - stlr ttyp383 2:07pm 153:31 - - -ksh stlr ttyp575 11:15am 60:23 - - tset...
一行数据: 1111 11111 1111 11111 11111111 26.90 如何通过awk的处理格式化输出为 1111 11111 1111 11111 11111111 000000002690 就是其中的小数*100变为整数后前补零,补足12位?
求个脚本: 如果我想对一个每行70个字符的文本处理,让它生成每列10个字符,每行6列,并输出字符数怎么弄呀? 如:[code]TINHTFGNPVIPFKDGIYFAATEKSNVVRGWVFGSTMNNKSQSVIIINNSTNVVIRACNFELCDNPFFAV SKPMGTQTHTMIFDNAFNCTFEYISDAFSLDVSEKSGNFKHLREFVFKNKDGFLYVYKGYQPIDVVRDLP[/code]生成:[code] 1 TINHTFGNPV IPFKDGIYFA ATEKSNVVRG WVFGSTMNNK SQSVIIINNS TNVVIRACNF 61 ELCDNPFFAV SKPMGTQTHT MIFDNAFNCT FEYISDAFSL DVSEKSGNFK ...
本来以为是四舍五入的,可是下面的结果,让我很迷惑 echo "3.445"|awk '{printf "%0.2f\n",$0}' 3.44 echo "3.446"|awk '{printf "%0.2f\n",$0}' 3.45 echo "3.4455"|awk '{printf "%0.2f\n",$0}' 3.45
有一文档如下: cat test.txt ping -c4 -s24 111.222.333.444 ping -c4 -s24 222.333.444.555 。。。。。 现在想用awk使在每行后都加上这句 :|grep -E "PING|packet loss|rtt"|awk '{printf("%s",$0);}END{print}'|awk '{print $2" "$12" "$17" "$18" "$19}' 最后想要的结果如下: cat test.txt ping -c4 -s24 111.222.333.444 |grep -E "PING|packet loss|rtt"|awk '{printf("%s",$0);}END{print}'|awk '{print $2" "$12" "...