1
0

cl-test.py 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. import subprocess
  2. import json
  3. import sys
  4. import io
  5. cmd='aws cloudtrail lookup-events --lookup-attributes AttributeKey=EventName,AttributeValue=RunInstances --max-results 20 --region us-east-1'
  6. cmds=cmd.split(' ')
  7. #cl=subprocess.run(cmds,text=True, capture_output=True)
  8. cl=subprocess.Popen(cmds, stdout=subprocess.PIPE)
  9. lst=[]
  10. def proc_l(l):
  11. # return l.replace(',','').replace('\n','').strip()
  12. return l.replace('\n','').strip()
  13. js="{"
  14. for l in io.TextIOWrapper(cl.stdout, encoding="utf-8"):
  15. if '"EventId":' in l:
  16. js+=proc_l(l)
  17. lst.append(proc_l(l))
  18. if '"EventTime":' in l:
  19. l2=proc_l(l)
  20. l2[12]='"'
  21. l2+='"'
  22. js+=l2
  23. js+="}"
  24. print(js)
  25. js2=json.loads(js)
  26. print(js2)
  27. js="{"
  28. lst.append(proc_l(l))
  29. if '"AccessKeyId":' in l:
  30. js+=proc_l(l)
  31. lst.append(proc_l(l))
  32. if '"EventName":' in l:
  33. js+=proc_l(l)
  34. lst.append(proc_l(l))
  35. #lines = cl.stdout.readlines()
  36. #clstr=str(cl)
  37. #lines=clstr.split('\n')
  38. #print(lst)
  39. # print(l)
  40. # sys.exit()
  41. #js=json.loads(str(cl))
  42. #print(js)