-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathbg_proc-watch01
57 lines (47 loc) · 2.22 KB
/
bg_proc-watch01
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#!/usr/bin/env python3
# -*- coding:utf-8 -*-
import os
import sys
import time
import psutil
import atexit
import argparse
import subprocess
import board
import busio
import time
import adafruit_tlc59711
spi = busio.SPI(board.SCK, MOSI=board.MOSI)
leds = adafruit_tlc59711.TLC59711(spi)
def link_absent():
b_full = 65535
b_none = 0
leds[0] = (b_full, b_none, b_none)
time.sleep(.25)
leds[0] = (b_none, b_none, b_none)
time.sleep(.25)
def link_present():
b_full = 65535
b_none = 0
leds[0] = (b_full, b_none, b_none)
def find_procs_by_name(name):
"Return a list of processes matching 'name'."
ls = []
for p in psutil.process_iter(attrs=["name", "exe", "cmdline"]):
if name == p.info['name'] or \
p.info['exe'] and os.path.basename(p.info['exe']) == name or \
p.info['cmdline'] and p.info['cmdline'][0] == name:
ls.append(' '.join(p.info['cmdline']))
return ls
def matchit():
name = "java"
fprocs = find_procs_by_name(name)
cmd1 = str(fprocs).replace("['","").replace("']","")
cmd2 = "/opt/jdk1.8.0_221/bin/java -splash:/opt/ECMLink/.install4j/s_bd23kg.png -Dinstall4j.jvmDir=/opt/jdk1.8.0_221 -Dexe4j.moduleName=/opt/ECMLink/ecmlink -Xms32m -Xmx256m -Djava.util.logging.config.file=logging.properties -Decmlink.version=3.36.73 -Decmlink.builddate=20180209 -Dinstall4j.launcherId=20 -Dinstall4j.swt=false -Di4jv=0 -Di4jv=0 -Di4jv=0 -Di4jv=0 -Di4jv=0 -Di4j.vpt=true -classpath /opt/ECMLink/.install4j/i4jruntime.jar:/opt/ECMLink/resources:/opt/ECMLink/ecmlink.jar:/opt/ECMLink/ecmlinkhelp.jar:/opt/ECMLink/libs/animation.jar:/opt/ECMLink/libs/apple-extensions.jar:/opt/ECMLink/libs/binding.jar:/opt/ECMLink/libs/forms.jar:/opt/ECMLink/libs/foxtrot.jar:/opt/ECMLink/libs/jhall.jar:/opt/ECMLink/libs/l2fprod-common-fontchooser.jar:/opt/ECMLink/libs/looks.jar:/opt/ECMLink/libs/RXTXcomm.jar:/opt/ECMLink/libs/serialio.jar:/opt/ECMLink/libs/uif-extras.jar:/opt/ECMLink/libs/uif.jar:/opt/ECMLink/libs/validation.jar com.install4j.runtime.launcher.UnixLauncher launch bcc834d9 com.ecmtuning.ecmlink.ECMLink"
if cmd2 in cmd1:
link_present()
else:
link_absent()
if __name__ == '__main__':
while True:
matchit()