#AWK#简单例子展示AWK是如何的灵活

AWK,自己最近在做一个分析时候,特别用到。以前只是简单的打印输出实践了下,这次有些数据要处理,就连续写了几个简单的脚本,发现AWK灵活的一塌糊涂。除了OO不能支持以外,其他的任何 可以通过程序来做的事情,感觉无所不能。

AWK的简单灵活,是其主要优点。到底多灵活,看几个例子.

比如,我有一份a文件,如下:

a

b

c

d


用AWK怎么可以把这个文件打印出来呢?

1>AWK '{print}' a

ok,这个是比较多的写法,正规,简单,可以打印出A文件。有没有更简单的呢?

2>AWK '//' a

哈哈,这个简单不?起码输入比上面的Print少多了,但是其本质的逻辑有了不同。这个是加了一个正则表达式的判断,默认就是整行打印。看着简单,其实有内涵。那更复杂的有木有。必须的。

3>awk 'BEGIN{ "cat a" |getline line ; print line}'

这个看上去南辕北辙啊,何必搞一个cat,然后再搞一个读入,再打印。其实,这个里面包含了好多东西。比如"cat a ",这个涉及到linux系统的语句调用,在写一个大的脚本的时候,非常管用。而且,里面又加一个getline,读入文件。同时,还有一个管道的使用|。当然,BEGIN就不说了。


AWK就是这样一个有内涵的人,可以简单,也可以复杂,可以简单到一行命令解决其他语言望其项背的问题,也可以复杂到让人看似摸不着头脑的东西。


随便写几个例子,展示一下AWK的灵活和方便,算是自己使用AWK的一点点感触。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值