将Python脚本加入开机启动项(WIN10、CentOS) | 您所在的位置:网站首页 › 怎么把程序添加到启动项里 › 将Python脚本加入开机启动项(WIN10、CentOS) |
1、将Python脚本加入WIN10系统开机启动项
(1)首先,需要新建一个.bat文件(用来运行脚本),格式如下,斜体加粗部分为python脚本的位置(写完之后保存),保存的文件名为start.bat(可以按自己的需求进行命名): python D:\python\test.py pause (2)点击开始–所有程序–启动–右击–打开,将已经保存的.bat文件复制到该目录(C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp)下,可能杀毒软件会阻止,选择允许,然后重启电脑即可。 注:开机自启以后会打开一个cmd窗口,关闭窗口,python程序将停止运行。 2、将Python脚本后台运行1中,启动后会打开一个cmd窗口,关闭窗口,python程序将停止运行,有时会存在不小心关闭掉CMD窗口的情形,所以下面我们讨论,将Python脚本加入开机自启动项,并在后台运行的方法. 为了让控制台窗口不会显示出来,我们需要在start.bat的开头部分加入一些代码,加完代码后,start.bat中的内容如下: @echo off if "%1" == "h" goto begin mshta vbscript:createobject("wscript.shell").run("""%~0"" h",0)(window.close)&&exit :begin set path=D:\test\Miniconda3;D:\test\Miniconda3\Scripts python D:\python\test.py pauseset path=D:\test\Miniconda3;D:\test\Miniconda3\Scripts是指定python路径,可以用你自己的python,与系统 隔离,方便移植和部署 右键start.bat,选择以管理员身份运行,这样,test.py就能够开机自启且不会出现控制台窗口了. 3、该怎么关闭test.py呢?别急,可以这么做:如下图所示,打开任务管理器,找到"Python",将它"结束任务"即可。 创建yourServer.service文件,并放入/etc/systemd/system/目录下 touch yourServer.serviceyourServer.service的内容如下 [Unit] Description=imageclassification After=multi-user.target [Service] StartLimitInterval=5 StartLimitBurst=10 ExecStart=/root/anaconda3/bin/python /root/python/test.py WorkingDirectory=/root/python/ Restart=always [Install] WantedBy=multi-user.target需要注意的是,ExecStart后的python和程序所在路径必须是绝对路径,此处Python的路径也可以是你自己定义的Python路径,与系统 pYthon路径隔离,方便移植和部署 在test.py的同路径下创建yourServer_start.sh文件 touch yourServer_start.shyourServer_start.sh的内容如下 cp yourServer.service /etc/systemd/system #将服务放在/etc/systemd/system目录下 chmod 644 /etc/systemd/system/yourServer.service #配置权限 systemctl daemon-reload #重载服务列表 systemctl enable yourServer.service #设置开机自启动 systemctl start yourServer.service #启动服务cd 到 /root/python/目录下,执行 bash yourServer_start.sh即可启动开机自启服务 cd /root/python bash yourServer_start.sh使用以下命令查看服务否正常开启 systemctl start yourServer.service使用以下命令查看服务否正常停止 systemctl stop yourServer.service根据实际需要,使用以下命令将服务设为开机自启动 systemctl enable yourServer.service使用以下命令禁用服务设为开机自启动 systemctl disable yourServer.service使用以下命令查看服务是否正常运行 systemctl status yourServer.service |
CopyRight 2018-2019 实验室设备网 版权所有 |