簡體   English   中英

試圖找到正在運行的進程

[英]Trying to find process running

我試圖弄清楚程序是否正在運行。 如果它沒有運行,運行它; 如果正在運行,請繼續執行腳本。

這就是我到目前為止所擁有的。 我的錯誤是

line 19
    subprocess.call('C:\Windows\system32\notepad.exe')
                                                      ^
IndentationError: unindent does not match any outer indentation level

這是我的代碼:

import os
import sys
import io
import subprocess
import pyautogui
import time
import win32com.client as comclt
import psutil
import wmi
from subprocess import popen

process_name= "Notepad"

tmp = os.popen("ps -Af").read()
    
if process_name not in tmp[:]:
    print('notepad Is not running. Lets Start it')
    
 subprocess.call('C:\Windows\system32\notepad.exe')

else:
    subprocess.call('procdump.exe -ma notepad')

與其他一些語言不同,Python 關心空格和縮進。

您的代碼需要始終一致地縮進。

您可以使用制表符或空格,但不能同時使用兩者。

在您的示例中,子流程行的縮進與其上方的打印行不同。 由於兩者都嵌套在同一個 if 語句下,因此它們需要匹配。

import sys
import io
import subprocess
import pyautogui
import time
import win32com.client as comclt
import psutil
import wmi
from subprocess import Popen

process_name= "Notepad"

tmp = os.Popen("tasklist").read()
    
if process_name not in tmp[:]:
    print('notepad Is not running. Lets Start it')
    subprocess.call('C:\Windows\system32\notepad.exe')
else:
    subprocess.call('procdump.exe -ma notepad')```

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM