千家信息网

shell分别输出文件奇数行、偶数行

发表于:2024-12-13 作者:千家信息网编辑
千家信息网最后更新 2024年12月13日,shell分别输出文件奇数行、偶数行awk[root@114 ~]# awk 'NR%2==0' test.log 输出偶数号2 warning: libgcc-4.4.7-4.el6.x86_64:
千家信息网最后更新 2024年12月13日shell分别输出文件奇数行、偶数行

shell分别输出文件奇数行、偶数行

awk

[root@114 ~]# awk 'NR%2==0' test.log 输出偶数号
2 warning: libgcc-4.4.7-4.el6.x86_64: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
4 Installing filesystem-2.4.30-3.el6.x86_64
6 Installing ncurses-base-5.7-3.20090208.el6.x86_64
8 Installing glibc-common-2.12-1.132.el6.x86_64
10 Installing glibc-2.12-1.132.el6.x86_64


[root@114 ~]# awk 'NR%2==1' test.log 输出奇数行
1 Installing libgcc-4.4.7-4.el6.x86_64
3 Installing setup-2.8.14-20.el6_4.1.noarch
5 Installing basesystem-10.0-4.el6.noarch
7 Installing tzdata-2013g-1.el6.noarch
9 Installing nss-softokn-freebl-3.14.3-9.el6.x86_64

sed

[root@114 ~]# sed -n 'n;p' test.log
2 warning: libgcc-4.4.7-4.el6.x86_64: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
4 Installing filesystem-2.4.30-3.el6.x86_64
6 Installing ncurses-base-5.7-3.20090208.el6.x86_64
8 Installing glibc-common-2.12-1.132.el6.x86_64
10 Installing glibc-2.12-1.132.el6.x86_64


[root@114 ~]# sed -n 'p;n' test.log
1 Installing libgcc-4.4.7-4.el6.x86_64
3 Installing setup-2.8.14-20.el6_4.1.noarch
5 Installing basesystem-10.0-4.el6.noarch
7 Installing tzdata-2013g-1.el6.noarch
9 Installing nss-softokn-freebl-3.14.3-9.el6.x86_64

[root@114 ~]# sed -n '1~2p' test.log
1 Installing libgcc-4.4.7-4.el6.x86_64
3 Installing setup-2.8.14-20.el6_4.1.noarch
5 Installing basesystem-10.0-4.el6.noarch
7 Installing tzdata-2013g-1.el6.noarch
9 Installing nss-softokn-freebl-3.14.3-9.el6.x86_64
[root@114 ~]# sed -n '2~2p' test.log
2 warning: libgcc-4.4.7-4.el6.x86_64: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
4 Installing filesystem-2.4.30-3.el6.x86_64
6 Installing ncurses-base-5.7-3.20090208.el6.x86_64
8 Installing glibc-common-2.12-1.132.el6.x86_64
10 Installing glibc-2.12-1.132.el6.x86_64

sed '1~2p' 其中1,代表firest line,2,代表间隔step,输出行=1+2*N,奇数行

sed '2~2p' 输出行=2+2*N,偶数行

0