如何解决python:将文本与文件进行比较
我想使用 python 将 shell 命令输出与文本文件进行比较,这是我的代码:
os.system('find / -perm -u=s -type f 2>/dev/null')
suid_file = open("suid_list.txt","r")
os.system('find / -perm -u=s -type f 2>/dev/null > /tmp/test1.txt')
lines = suid_file.read().split(',')
lines2 = open('/tmp/test1.txt','r').read()
for y in lines:
if y in lines2:
#matched
而test1.txt的内容是:
/usr/bin/su
/usr/bin/bwrap
/usr/bin/chsh
/usr/bin/ntfs-3g
/usr/bin/kismet_cap_ti_cc_2540
/usr/bin/mount
/usr/bin/vmware-user-suid-wrapper
/usr/bin/passwd
/usr/bin/fusermount3
/usr/bin/kismet_cap_linux_bluetooth
/usr/bin/kismet_cap_nxp_kw41z
/usr/bin/kismet_cap_nrf_mousejack
/usr/bin/newgrp
/usr/bin/gpasswd
解决方法
lines2 = file_read.read()
第二次调用 file_read.read() 将返回空。 您应该在循环外调用并将结果存储在一个可以在循环内使用的变量中。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。