预备知识:cmd中打开和关闭程序

cmd中打开程序

a.打开系统自带程序

    系统自带的程序的路径一般都已加入环境变量之中,只需在cmd窗口中直接输入程序名称即可。

以notepad为例,直接在cmd窗口中输入notepad后回车即可打开。

b.打开自己安装且没有加入环境变量的程序

    以网易云音乐为例,在cmd窗口中需要输入完整的程序路径  "D:\Program Files (x86)\Netease\CloudMusic\cloudmusic.exe"。

    注意,双引号是必须的。

    若将网易云音乐的路径加入环境变量之中,则在cmd窗口中输入cloudmusic后回车即可运行。

在cmd中关闭程序

    在cmd中关闭程序可以使用taskkill命令,语法如下:

    taskkill /f /t /im 进程名

    注意,这里只需要程序的进程名即可,而非完整路径名。

    仍以网易云音乐为例,在cmd窗口中输入 taskkill /f /t /im cloudmusic.exe 后回车即可关闭网易云音乐。

    如下图所示:

python tk窗口进程阻塞 python taskkill_网易云音乐

实例演示:

打开记事本:

1 import os
2 os.system('notepad')

1 import subprocess
2 subprocess.call('notepad')

我们看以下代码:

1 import os
2 os.system(r'"D:\Program Files (x86)\Netease\CloudMusic\cloudmusic.exe"')

这段代码会启动网易云音乐,效果和我们在cmd窗口中输入 "D:\Program Files (x86)\Netease\CloudMusic\cloudmusic.exe" 效果一样。注意字符串中含有空格,所以有 r''。

而以下代码也可以实现同样的功能:

1 import subprocess
2 subprocess.call("D:\Program Files (x86)\Netease\CloudMusic\cloudmusic.exe")

同上面那段代码的区别只是括号中的 r''。

subprocess的目的就是启动一个新的进程并且与之通信。

subprocess通过子进程来执行外部指令,并通过input/output/error管道,获取子进程的执行的返回信息。

常用方法:

subprocess.call():执行命令,并返回执行状态,其中shell参数为False时,命令需要通过列表的方式传入,当shell为True时,可直接传入命令

示例如下:

subprocess通过子进程来执行外部指令,并通过input/output/error管道,获取子进程的执行的返回信息。

常用方法:

subprocess.call():执行命令,并返回执行状态,其中shell参数为False时,命令需要通过列表的方式传入,当shell为True时,可直接传入命令

示例如下: