[awk]--syntax -02

tip:for this section about fundament syntax of  awk


 1.1 how to run a awk's program
 1.2 fundamental syntax #newline sperate terminate

 1.3 comment  a statement

------------------------------------------

the file "data"  for illustration

[oracle@localhost ~]$ cat data
footslw
shfootch
choing

------------------------------------------

answer:1.1

(1)

#with the infile parameter

[oracle@localhost ~]$ awk '{print substr($1,1,1)}' data
f
s
c

(2)

#with no infile parameter

[oracle@localhost ~]$ awk 'BEGIN { print "have no infile parameter!"}'    
have no infile parameter!

(3)

[oracle@localhost ~]$ ls -tl |head
total 83280
-rw-r--r-- 1 oracle oinstall      771 Aug  2 01:32 data_bak2
-rwxr-xr-x 1 oracle oinstall      771 Jul 31 23:14 data_bak
-rwxr-xr-x 1 oracle oinstall       81 Jul 31 20:16 sh02
-rwxr-xr-x 1 oracle oinstall       53 Jul 31 19:53 shell01
-rwxr-xr-x 1 oracle oinstall      771 Jul 31 19:10 d2 a
-rw-r--r-- 1 oracle oinstall       25 Jul 31 18:28 data
-rw-r--r-- 1 oracle oinstall      101 Jul 31 01:36 tmpdata3
-rw-r--r-- 1 oracle oinstall      280 Jul 31 00:28 001b
-rw-r--r-- 1 oracle oinstall      232 Jul 30 23:46 002
[oracle@localhost ~]$ ls -tl |head |awk '{print $1,$4}'
total
-rw-r--r-- oinstall
-rwxr-xr-x oinstall
-rwxr-xr-x oinstall
-rwxr-xr-x oinstall
-rwxr-xr-x oinstall
-rw-r--r-- oinstall
-rw-r--r-- oinstall
-rw-r--r-- oinstall
-rw-r--r-- oinstall


[oracle@localhost ~]$ ls -tl |head |awk '{print $1,$4}' |head -3
total
-rw-r--r-- oinstall
-rwxr-xr-x oinstall

(4):awk -f awkfile

[oracle@localhost ~]$ awk -f awkf data2
-rw-r--r-- oinstall
ok
-rw-r--r-- oinstall
ok
-rwxr-xr-x oinstall
ok
[oracle@localhost ~]$ cat awkf
#!/bin/awk
{print $1,$4};
{print "ok"};


answer 1.2

(1) newline with continue(n)

[oracle@localhost ~]$ ls -tl |head |awk '{print $5}'|he\
> ad -3

771
771

it is equivalent  to command "ls -tl |head |awk '{print $5}'|head -3


(2) line with terminate

[oracle@localhost ~]$ awk '{print $1;}
{print $2;}
' data2
-rw-r--r--
1
-rw-r--r--
1
-rwxr-xr-x
1
[oracle@localhost ~]$ awk '{print $1}
{print $2}
' data2
-rw-r--r--
1
-rw-r--r--
1
-rwxr-xr-x
1
[oracle@localhost ~]$ awk '{print $1;print $2}' data2
-rw-r--r--
1
-rw-r--r--
1
-rwxr-xr-x
1
[oracle@localhost ~]$ awk '{print $1                      
print $2}' data2
-rw-r--r--
1
-rw-r--r--
1
-rwxr-xr-x
1


[oracle@localhost ~]$ awk '{print $1};{print $2}' data2
-rw-r--r--
1
-rw-r--r--
1
-rwxr-xr-x
1
[oracle@localhost ~]$ awk '{print $1}{print $2}' data2
-rw-r--r--
1
-rw-r--r--
1
-rwxr-xr-x
1

#we can see that
 "{ } ,\r(newline)"can instead of semicolon to terminate a command;


andwer 1.3


[oracle@localhost ~]$ awk '{print $1}
> #this is a comment;
> {print $2};
> ' data2
-rw-r--r--
1
-rw-r--r--
1
-rwxr-xr-x
1

#there is no multiline in awk;



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值