在下面的文件中,我需要检查最后3行是否存在(实线)。如果存在脚本退出,则将这些行添加到文件
dev_server #cat p_file / common-password
密码必备pam_pwcheck.so nullok cracklib
密码需要pam_unix2.so use_authtok nullok
密码要求pam_cracklib.so dcredit = -1 ucredit = 1 1credit = -1 minlen = 8 retry = 5
密码需要pam_pwhistory.so use_authok remember = 3 retry = 5
密码需要pam_pwcheck.so remember = 5
密码需要pam_unix2.so use_authok
我只能搜索一行,但想搜索文件中的所有3行。任何人都可以建议使用python做到这一点的最佳方法。
答案 0 :(得分:0)
感谢您的-2评级,它帮助我学习/搜索更多,我得到了答案,任何帮助更好的将不胜感激。谢谢
#!/usr/bin/env python
import sys,os,re
print ('Searcing for a line in /etc/pam.d/common-password\n')
pass_file = open('/root/p_file/common-password', 'r').readlines()
for i in pass_file:
if re.search(r"password required pam_unix2.so use_authok\n", i):
sys.exit("Sending exit code 0")
else:
sys.exit(2)
if __name__=='__main__':
main(sys.argv)