sed和awk简介
什么是sed和awk
sed
#include <stdio.h>
int main()
{
printf("This is Main()!\n");
return 0;
}
windeal@ubuntu:~/Windeal/Test$ sed -e '2d' -e '6c \\treturn 1;' test.c
#include <stdio.h>
int main()
{
printf("This is Main()!\n");
return 1;
}
windeal@ubuntu:~/Windeal/Test$
windeal@ubuntu:~/Windeal/Test$ sed -f script test.c
#include <stdio.h>
int main()
{
printf("This is MyMain()!\n");
printf("hello!\n");
return 0;
}
windeal@ubuntu:~/Windeal/Test$
awk
1 mawk [-W option] [-F value] [-v var=value] [--] 'program text' [file ...]
2 mawk [-W option] [-F value] [-v var=value] [-f program-file] [--] [file ...]
and function definitions.
No. Name Chinese Math
001 Jack 80 85
002 Jane 90 90
003 Ben 85 90
004 Alice 85 95
windeal@ubuntu:~/Windeal/Test$ awk '{print "line:" NR "\t" $1 "\t" $3 "\t" $4}' stu.txt
line:1 No. Chinese Math
line:2 001 80 85
line:3 002 90 90
line:4 003 85 90
line:5 004 85 95
windeal@ubuntu:~/Windeal/Test$
windeal@ubuntu:~/Windeal/Test$ awk 'NR==1 {print} NR>1&&$4==90{print}' stu.txt
No. Name Chinese Math
002 Jane 90 90
003 Ben 85 90
windeal@ubuntu:~/Windeal/Test$
windeal@ubuntu:~/Windeal/Test$ awk '{if(NR==1) printf "%10s %10s %10s %10s %10s\n",$1,$2,$3,$4,"Sum"}\
NR>=2{Sum=$3+$4
printf "%10s %10s %10s %10s %10s\n",$1,$2,$3,$4,Sum}' stu.txt
No. Name Chinese Math Sum
001 Jack 80 85 165
002 Jane 90 90 180
003 Ben 85 90 175
004 Alice 85 95 180
windeal@ubuntu:~/Windeal/Test$
后面需要换行,还不清楚为什么。
sed和awk简介的更多相关文章
- 学习笔记之Shell脚本学习指南 & sed与awk & 正则表达式
正则表达式_百度百科 http://baike.baidu.com/link?url=ybgDrN2WQQKN64_gu-diCqdeDqL8LQ-jiQ-ftzzPaNUa9CmgBRDNnyx50 ...
- linux shell必知必会sed、awk
sed是一种在线编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往 ...
- 【Linux进阶】使用grep、find、sed以及awk进行文本操作
目录 一.元字符 二.grep命令 1. 过滤出包含某字符串的行 2. 过滤出以某字符串开头(结尾)的行 3. 过滤出包含某字符串及其相邻的行 4. 过滤出不包含某关键字的行 5. 过滤出包含多个字符 ...
- Sed、Awk单行脚本快速参考
文本间隔: # 在每一行后面增加一空行 sed G awk '{printf("%s\n\n",$0)}' # 将原来的所有空行删除并在每一行后面增加一空行. # 这样在输出的文本 ...
- sh脚本学习之: sh脚本 、sed、awk
sh脚本 sh命令的批处理文件,支持更复杂的逻辑. Shell中的变量 参数 $0 当前脚本路径 $1....$n 脚本执行对应的第n个参数 条件判断 文件判断 test [op] path e存在 ...
- 一个利用sed和awk处理文本的小栗子
这两天做<Linux操作系统>课程的作业,碰到了一个题目,感觉很有意思,很考验对awk掌握的熟练度,故特意拿来分享. 首先说题目是这样的,有这样一段文本: RECORD #这是多余的注释行 ...
- Pyp 替代sed,awk的文本处理工具
Linux上文本处理工具虽不少,像cut,tr,join,split,paste,sort,uniq,sed,awk这些经典工具让人眼花缭乱,而且都太老了,使用方法都不太人性化,尤其awk,语法简直反 ...
- sed and awk学习笔记
sed and awk 背景 awk起源追溯至sed和grep,进而追溯至共同的行编辑器ed.实用工具grep来源于ed命令:g/re/p .实用工具awk和sed有一个共同的选项-f用于指定脚本的名 ...
- 三大文本处理工具grep、sed及awk的简单介绍
grep.sed和awk都是文本处理工具,虽然都是文本处理工具单却都有各自的优缺点,一种文本处理命令是不能被另一个完全替换的,否则也不会出现三个文本处理命令了.只不过,相比较而言,sed和awk功能更 ...
随机推荐
- 使用sql语句创建 表空间 和用户,以及如何彻底删除表空间和用户,使用命令导出和导出数据库
创建表空间有很多种方式,在安装好oracle 11g 后在网站上 https://localhost:1158/em 手动创建也可以,但是没有sql直接生成方便,下面介绍下如何用sql语句直接生成表空 ...
- C#图片增加水印
给图片增加水印 1.引用 using System.Drawing; 2.代码实现 string ImagePath = @"C:\Users\RAPOO\Pictures\Camera R ...
- CMake入门教程(转帖)
本文转自:https://www.cnblogs.com/never--more/p/6921837.html CMake入门教程 参考文献:http://www.ibm.com/developerw ...
- Java 线程池submit和execute
submit方法: public abstract class AbstractExecutorService implements ExecutorService { protected <T ...
- CentOS(64位)安装apr
安装apr来提高tomcat 的可伸缩性和性能 cd /usr/local/ 1. 下载apr 和 apr-util最新版 wget http://apache.fayea.com/apache-m ...
- 迟到的thuwc&noiwc2018总结
已经4个多月没写博客了呢. thuwc和noiwc都炸了,接下来的一段时间都没怎么写题,靠文化课和游戏麻醉自己.这篇博客也算是向之前自闭.颓废的自己告别吧.. 先写一发游记: thuwc:Day1炸, ...
- Educational Codeforces Round 54 (Rated for Div. 2) DE
D 给出一个无向图,需要删去一些边,想知道最后能有多少个点到1的距离还是过去那么短 如果求一个最短路,然后从删边的角度看,看起来很难做,但是如果从零开始加边就会有做法,如同prim那样,先加入和1直接 ...
- spring boot 使用拦截器,注解 实现 权限过滤
http://www.cnblogs.com/zhangXingSheng/p/7744997.html spring boot 使用拦截器 实现 用户登录拦截 http://www.cnblogs. ...
- 转 : JBoss Web和 Tomcat的区别
JBoss Web和 Tomcat的区别 在Web2.0的浪潮中,各种页面技术和框架不断涌现,为服务器端的基础架构提出了更高的稳定性和可扩展性的要求.近年来,作为开源中间件的全 球领导者,JBoss在 ...
- $.extendGit 丢弃所有本地修改的方法
git checkout . #本地所有修改的.没有的提交的,都返回到原来的状态 git stash #把所有没有提交的修改暂存到stash里面.可用git stash pop回复. git rese ...