powershell命令无法从python脚本中正常运行
我正在尝试运行此powershell命令:powershell命令无法从python脚本中正常运行,python,powershell,Python,Powershell,我正在尝试运行此powershell命令: Unregister-ScheduledTask -TaskPath "\Lsports Tasks" -a 当我从powershell运行它时,它工作正常,我从python脚本获得相同的输出,但当我从python脚本运行它时,什么都没有发生,我得到的输出与我从powershell命令获得的输出相同,但它不工作,下面是我的脚本: import psutil import os os.system("""powershell -command ""Un
Unregister-ScheduledTask -TaskPath "\Lsports Tasks" -a
当我从powershell运行它时,它工作正常,我从python脚本获得相同的输出,但当我从python脚本运行它时,什么都没有发生,我得到的输出与我从powershell命令获得的输出相同,但它不工作,下面是我的脚本:
import psutil
import os
os.system("""powershell -command ""Unregister-ScheduledTask -TaskPath "\Lsports Tasks\" -a""")
commands = []
for proc in psutil.process_iter(['pid','name']):
process = proc.info
if process['name'] == 'svchost.exe':
pid = process['pid']
cmds = psutil.Process(pid=int(pid)).cmdline()
cmd = ' '.join(cmds)
commands.append(cmd)
i = 0
for c in commands:
i+= 1
task = os.system(f"""SCHTASKS /CREATE /SC ONSTART /RU system /TN "Lsports Tasks\Lsports Runner{i}" /TR "{c}""".format(i,c=c))
我从命令中获得的输出:
CimJob1 CimJob Running
谢谢 首先,您应该授予您的程序管理员权限。它可以正常工作。(在windows上) 像这样:
import ctypes
import time
import sys
import os
import psutil
def is_admin():
try:
return ctypes.windll.shell32.IsUserAnAdmin()
except:
return False
if is_admin():
os.system("""powershell -command ""Unregister-ScheduledTask -TaskPath "\Lsports Tasks\" -a""")
commands = []
for proc in psutil.process_iter(['pid', 'name']):
process = proc.info
if process['name'] == 'svchost.exe':
pid = process['pid']
try:
cmds = psutil.Process(pid=int(pid)).cmdline()
except:
pass
cmd = ' '.join(cmds)
commands.append(cmd)
i = 0
for c in commands:
i += 1
task = os.system(f"""SCHTASKS /CREATE /SC ONSTART /RU system /TN "Lsports Tasks\Lsports Runner{i}" /TR "{c}""".format(i, c=c))
else:
if sys.version_info[0] == 3:
ctypes.windll.shell32.ShellExecuteW(None, "runas", sys.executable, __file__, None, 1)
else:
ctypes.windll.shell32.ShellExecuteW(None, u"runas", unicode(sys.executable), unicode(__file__), None, 1)
当我在admin shell中运行这个时,它是正确的,一些pid可能会丢失。所以在这里添加cache exc。也许你需要admin shell?它是什么意思?我如何从脚本中运行它?从脚本上看,我是从CMDHY强尼那里跑出来的,仍然没有成功。