文本三剑客之sed一些用法
[root@centos8 data]#seq 10 |sed '/^b/w /data/sed.log' /etc/passwd 将指定以b开头行另存
[root@centos8 data]#sed -n '3w /data/sed.log' /etc/passwd 将passwd第3行保存到sed.log文件中
[root@centos8 data]#sed -n '3,6w /data/sed.log' /etc/passwd将passwd第3到6行保存到sed.log文件中
[root@centos8 data]#sed '3p' passwd 第三行重新打印一遍
[root@centos8 data]# sed -n ‘2p’ passwd 单独打印第二行
[root@centos8 data]#sed -n '$p' passwd 打印最后一行 =tail -n1 /etc/passwd
apache:x:48:48:Apache:/var/www:/sbin/nologin
[root@centos8 data]#ifconfig ens160 |sed -n '2p' |tr -s ' ' :|cut -d: -f310.0.0.201 提取IP地址
[root@centos8 data]#sed -n '/^[^#]/p' /etc/fstab sed使用正则表达式提取不以#开头行
=[root@centos8 data]#grep '^[^#]' /etc/fstab
[root@centos8 data]#sed -n '/root/p' passwd 挑选包含root的行 =grep ‘root’ /etc/passwd
[root@centos8 data]#sed -n '/^root/p' passwd 挑选以root开头的行
=grep ‘^root’ /data/passwd
[root@centos8 data]#sed -n '3,6p' passwd 挑选3-6行打印
[root@centos8 data]#cat -n passwd |sed -n '3,6p' 编号并挑选3-6行打印
=[root@centos8 data]#cat -d passwd |sed -n '3,6p'
=[root@centos8 data]#cat -b passwd |sed -n '3,6p'
=[root@centos8 data]#nl passwd|sed -n '3,6p'
[root@centos8 data]#nl passwd|sed -n '3,+5p' 挑选第三行往后五行并打印 3-8
sed -i.bak 备份并更改 /c 替换 /r追加内容
#尝试失败后锁定⽤户账户
sed -i.bak -e '/auth required pam_deny.so/aauth required pam_faillock.so preauth silent audit deny=6 unlock_time=600' -e '/auth required pam_deny.so/aauth sufficient pam_unix.so nullok try_first_pass' -e'/auth required pam_deny.so/aauth [default=die] pam_faillock.so authfail audit deny=6 unlock_time=600' /etc/pam.d/system-auth
sed -i '/account required pam_permit.so/aaccount requiredpam_faillock.so' /etc/pam.d/system-auth
#实现在6次登录失败尝试后,对非root锁定,并在10分钟后对该用户解锁
sed -i.bak '/account required pam_permit.so/aaccount required pam_faillock.so' /etc/pam.d/password-auth
#用户密码有效时间
sed -i.bak '/PASS_MAX_DAYS/s/99999/90/' /etc/login.defs
sed -i '/PASS_MIN_DAYS/s/0/7/' /etc/login.defs
sed -i '/PASS_MIN_LEN/s/5/8/' /etc/login.defs
sed -i '/PASS_WARN_AGE/s/7/15/' /etc/login.defs