查看“Linux-2018-spring-5-22”的源代码
←
Linux-2018-spring-5-22
跳到导航
跳到搜索
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看和复制此页面的源代码。
一、复习 *正则表达式 *sed *vim 二、新内容 *sed的应用 sed 's/^ //' score.txt | less 把每行前四个空格删掉 sed -r 's/^\s+//' socre.txt>score2.txt sed '1d' score.txt | less 删除第一行 sed '/[^0-9]$/d'删除缺考的那一行 sed -r 's/[^0-9 ].*[^0-9]/ /' *egrep egrep '^([a-Z]+)([0-9]+) \2\1$':一行的开始第一组为字母,第二组为数字,然后是空格,需要严格匹配。匹配上abc123 123abc 匹配不上:abc123 342abc egrep '^([a-Z]+)([0-9]+) ([0-9]+)([a-Z]+)$':可匹配上abc123 342abc *awk awk '条件/模式 {动作}' FILE awk '$3>=90 {print}' score1.txt | less:$3为第三列 awk '{print $2 " " $5}':打印两列,第二列和第五列 awk '{print $2,$5}' awk 'NR>1 {print}' awk 'NR>1 {print $0}':$0打印一行 awk 'BEGIN {print "No. ID. Score"}' score.txt awk 'BEGIN {sum = 0};{sum = sum +$3};END {aver = sum/NR;print NR,sum,aver}' score.txt wc score.txt:返回行数,词数/字段数,字符数 awk '{cn =cn+length($0) +1;wn = wn+NF};END {print NR, wn ,cn}' 特殊模式:BEGIN END 特殊变量: NR(record)---一行的记录,当前行 NF(field)-----字段,表示列 *管道pipeline cat main.txt main.c >x1 egrep 'stdout'>x2 wc -l x2 rm cat main.txt main.c | egrep 'stdout' | wc -l:和上面的操作一样 cat stdoutxxx main.txt main.c 2>&1 | egrep 'stdout' | wc -l:标准错误输出重定向 rm */*.output:把所有文件下*.output删除 cat */*.txt |egrep '^[0-9- ]+' -o |sort >y1 :-o只输出匹配的东西 linux的哲学思想: 1、small is beautiful,unless it is not.less is more.命令要小,做得好。 2、命令丰富满足用户/程序员的需求,避免写程序,重复造轮子。 3、把复杂的事情拆成一步步的小任务,逐一用命令完成(管道)。 *补充 1、hexdump -C score.txt | less 分屏显示一个文本的二进制 2、unicode类别:utf-8,utf-16;0a;换行;0d:回车;20:空格;汉字大于一个字节;数字1:nicode码里面对应十六进制的31,十进制的49。
返回至
Linux-2018-spring-5-22
。
导航菜单
个人工具
登录
名字空间
页面
讨论
变种
视图
阅读
查看源代码
查看历史
更多
搜索
导航
首页
新闻
成员介绍
研究组
科研项目
发表论文
在线演示
工具
链入页面
相关更改
特殊页面
页面信息