只是想拿起python并使用它,但我很头疼。我有一个日志文件,我想搜索特定的用户名,但生成的字符串是下面的行(删除敏感位);
MSWinEventLog<009>5<009>Security<009>1157464<009>Mon Apr 24 00:37:27 2017<009>4672<009>Microsoft-Windows-Security-Auditing<009><009>N/A<009>Audit Success<009>Domain-Controller<009>17548<009>Special privileges assigned to new logon.<013><010><013><010>Subject:<013><010><009>Security ID:<009><009>S-9-8-21-9576767673-22488686304-465465468911-1103<013><010><009>Account Name:<009><009>MyUserNameSearch<013><010><009>Account Domain:<009><009>DomainName<013><010><009>Logon ID:<009><009>0x2176ca6b<013><010><013><010>Privileges:<009><009>SeSecurityPrivilege<013><010><009><009><009>SeBackupPrivilege<013><010><009><009><009>SeRestorePrivilege<013><010><009><009><009>SeTakeOwnershipPrivilege<013><010><009><009><009>SeDebugPrivilege<013><010><009><009><009>SeSystemEnvironmentPrivilege<013><010><009><009><009>SeLoadDriverPrivilege<013><010><009><009><009>SeImpersonatePrivilege<013><010><009><009><009>SeEnableDelegationPrivilege
这是用户名,我该如何搜索?到目前为止我有这个
import csv
import re
username = input('Enter Username\n')
regex = re.compile('.username.')
with open('C:/Path/To/Log/File.csv', newline='') as csvfile:
logreader = csv.reader(csvfile, delimiter=',', quotechar='|')
for row in logreader:
for field in row:
if field == username:
print('found it')
如何在用户名的开头和开头引入通配符?
我希望脚本执行的操作是搜索给定的用户名并返回找到用户名的行。如果我可以使这个工作,那么我将看看如何返回行。
答案 0 :(得分:0)
您可以if field == username
替换if username in field
行。
如果您的True
字符串为username
in
字符串,则会始终返回field
。
field = 'abcd1234'
username = 'cd12'
if username in field:
print('found it')
>>> found it