awk useful commands examples
awk useful comand examples. How to Output Field Separator Variable, Number of Fields in a record, To print Non-system users and ignoring "nobody" etc.
You may reading link below :
By default awk OFS is a single space character. How to use OFS assgin a single space character equal to ',' as below:
The output as below:
Awk NR gives you the total number of records being processed or line number
To print Non-system users and ignoring "nobody"
You may reading link below :
- How to reset root password on centos 7
- CentOS/RHEL Use yum Command To Downgrade Upgrade or Rollback Updates
- Generate and Verify Files with MD5 Checksum in Linux
- use inotify-tools on centos
$ cat /etc/passwd | awk -F':' 'BEGIN{ print "Name\tUID,GID\tHomeDirectory" }{print $1"\t"$3,$4"\t"$6}'The output as below:
Name UID,GID HomeDirectory
root 0 0 /root
bin 1 1 /bin
daemon 2 2 /sbin
adm 3 4 /var/adm
lp 4 7 /var/spool/lpd
sync 5 0 /sbin
shutdown 6 0 /sbin
halt 7 0 /sbin
mail 8 12 /var/spool/mail
operator 11 0 /root
games 12 100 /usr/games
ftp 14 50 /var/ftp
nobody 99 99 /
systemd-bus-proxy 999 998 /
systemd-network 192 192 /
dbus 81 81 /
polkitd 998 997 /
tss 59 59 /dev/null
sshd 74 74 /var/empty/sshd
postfix 89 89 /var/spool/postfix
dockerroot 997 994 /var/lib/docker
huupv 1000 1000 /home/huupv
Awk OFS Example: Output Field Separator Variable
By default awk OFS is a single space character. How to use OFS assgin a single space character equal to ',' as below:
$ cat /etc/passwd | awk -F':' 'BEGIN{{OFS=","} print "Name\tUID,GID\tHomeDirectory" }{print $1"\t"$3,$4"\t"$6}'
The output as below:
Name UID,GID HomeDirectory
root 0,0 /root
bin 1,1 /bin
daemon 2,2 /sbin
adm 3,4 /var/adm
lp 4,7 /var/spool/lpd
sync 5,0 /sbin
shutdown 6,0 /sbin
halt 7,0 /sbin
mail 8,12 /var/spool/mail
operator 11,0 /root
games 12,100 /usr/games
ftp 14,50 /var/ftp
nobody 99,99 /
systemd-bus-proxy 999,998 /
systemd-network 192,192 /
dbus 81,81 /
polkitd 998,997 /
tss 59,59 /dev/null
sshd 74,74 /var/empty/sshd
postfix 89,89 /var/spool/postfix
dockerroot 997,994 /var/lib/docker
huupv 1000,1000 /home/huupv
Awk NF NR Example: Number of Fields in a record
Awk NF gives you the total number of fields in a recordAwk NR gives you the total number of records being processed or line number
$ cat huuphan-awkThe output as below:
huu 213 78 84 77
phan 221 56 58 45 111
huuphan 222 138 37 31
huuphan.com 257 178 67 45 333
$ awk '{print "line "NR,"->",NF"(Fields)"}' huuphan-awkThe output as below:
line 1 -> 5(Fields)
line 2 -> 6(Fields)
line 3 -> 5(Fields)
line 4 -> 6(Fields)
To print Non-system users and ignoring "nobody"
$ getent passwd |awk -F : '$3 >= 1000 && $3 < 65534' | awk -F':' 'BEGIN{{OFS=","} print "Name\tUID,GID\tHomeDirectory" }{print $1"\t"$3,$4"\t"$6}'The output as below:
Name UID,GID HomeDirectory
huupv 1000,1000 /home/huupv
Comments
Post a Comment