linux三剑客(1)
  TNZdNLJrAgNB 2023年11月02日 29 0

一、awk命令应用

1.语法格式:

awk 参数 文件


常用参数:

-F 指定输入时用到的字段分隔符

-v 自定义变量

-f 从脚本中读取awk命令

-m 对val值设置内在限制


内置变量:

变量名称 说明

ARGC 命令行参数个数

ARGV 命令行参数排列

ENVIRON 支持队列中系统环境变量的使用

FILENAME awk浏览的文件名

FNR 浏览文件的记录数

FS 设置输入域分隔符,等价于命令行 -F选项

NF 浏览记录的域的个数

NR 已读的记录数

OFS 输出域分隔符

ORS 输出记录分隔符

RS 控制记录分隔符


awk 域分隔符 '命令'

常用分隔符为“:”,“空格

awk '命令'

表示直接默认分隔符为空格

2.示例:

1.检测系统中UID为0的用户

[root@harbor ~]# awk -F: '$3 == 0 { print $1 }' /etc/passwd

root

2.检测系统中密码为空的用户

awk -F: 'length($2)==0 {print $ 1}' /etc/shadow

3.仅显示指定文件中第1、2列的内容(默认以空格为间隔符)

[root@linuxcool ~]# awk ' {print $1,$2} ' anaconda-ks.cfg

#version=RHEL8

ignoredisk --only-use=sda

autopart --type=lvm

# Partition

clearpart --none

... ...

4.以冒号为间隔符,仅显示指定文件中第1列的内容

[root@linuxcool ~]# awk -F : '{print $1}' /etc/passwd

root

bin

daemon

adm

lp

sync

shutdown

5.以冒号为间隔符,显示系统中所有UID号码大于500的用户信息(第3列)

[root@linuxcool ~]# awk -F : '$3>=500' /etc/passwd

nobody:x:65534:65534:Kernel Overflow User:/:/sbin/nologin

systemd-coredump:x:999:997:systemd Core Dumper:/:/sbin/nologin

polkitd:x:998:996:User for polkitd:/:/sbin/nologin

geoclue:x:997:995:User for geoclue:/var/lib/geoclue:/sbin/nologin

6.仅显示指定文件中含有指定关键词root的内容

[root@linuxcool ~]# awk '/root/{print}' anaconda-ks.cfg

rootpw --iscrypted $6$n9sZuTcY8Yzk4l.Q$LsuMNAROewyx.LomDtPpL9iJIOD3tsRThnzsAGE0hZXLMtdVCHVQ3pxzm3El8K2kuhcYLXJnhz.xUDGiE27s/1

pwpolicy root --minlen=6 --minquality=1 --notstrict --nochanges --notempty

7.以冒号为间隔符,仅显示指定文件中最后一个字段的内容

[root@linuxcool ~]# awk -F: '{print $NF}' /etc/passwd

/bin/bash

/sbin/nologin

/sbin/nologin

/sbin/nologin

/sbin/nologin

/bin/sync


【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  6YY0QMPUXEwu   2023年12月10日   31   0   0 linux网卡
  Ex81gqy3LOX7   2023年12月07日   22   0   0 linux
  nIt0XG0acU8j   2023年12月11日   32   0   0 linuxhtop
  nIt0XG0acU8j   2023年12月09日   36   0   0 linuxsort