我正在尝试使用python获取Mac上打开的应用程序的列表,然后使用mysql将其保存在服务器上...我希望使用子进程,但结果不是我想要的

最佳答案

psutils可能会帮助您:

import psutils
list(psutil.process_iter())


[psutil.Process(pid=0, name='kernel_task', started='2019-01-26 16:05:40'),
 psutil.Process(pid=1, name='launchd', started='2019-01-26 16:05:40'),
 psutil.Process(pid=40, name='syslogd', started='2019-01-26 16:05:45'),
 ...]


您也可以自己解析ps aux

import subprocess
subprocess.Popen(['ps','aux'], stdout=subprocess.PIPE).stdout.readlines()


[b'USER               PID  %CPU %MEM      VSZ    RSS   TT  STAT STARTED      TIME COMMAND\n',
 b'username           7834   7,9  9,5  7643484 797292   ??  S     4:03     4:32.77 /Applications/Firefox.app/Contents/MacOS/firefox\n',
 b'username           7839   6,9  3,4  5363256 285900   ??  R     4:03     0:11.68 /Applications/iTerm.app/Contents/MacOS/iTerm2\n',
 ...]

关于python - 使用Python在Mac上获取开放式应用程序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54422437/

10-12 23:24