鱼C论坛

 找回密码
 立即注册
查看: 1887|回复: 7

开机通过bat执行cmd命令

[复制链接]
发表于 2023-7-11 08:39:53 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
请教一个开机执行的bat脚本的编写方法:
1、编写一个bat文件,放进启动目录,开机自动执行,已实现
2、该bat共三个步骤,具体如下:
2.1 打开cmd窗口,已实现;
2.2 执行 D:\pyve\myve1\Scripts\activate.bat,已实现(激活一个Python的虚拟环境)
2.3 同一个cmd窗口,继续执行 streamlit run C:\Users\ZZC\Desktop\py脚本\streamlit\streamlit-visualization-23-st.bar_chart.py  (通过streamlit run命令启动一个py文件)
注:该cmd窗口不关闭
找了好多网页,写了几版都没能执行2.3这个步骤。求助。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-7-11 09:00:26 | 显示全部楼层
使用call 试一下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-11 09:07:39 | 显示全部楼层

能否提供具体的写法?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-7-11 09:09:07 | 显示全部楼层
您可以尝试以下方法来编写开机执行的批处理脚本:

打开一个文本编辑器(例如记事本)。
输入以下内容并保存为startup.bat或其他您喜欢的文件名:
@echo off
start cmd /k "call D:\pyve\myve1\Scripts\activate.bat & streamlit run C:\Users\ZZC\Desktop\py脚本\streamlit\streamlit-visualization-23-st.bar_chart.py"
将该批处理文件移动到启动目录中。通常,启动目录位于 C:\Users\用户名\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup。您可以在资源管理器中输入该路径来快速访问该目录。
现在,当您的计算机启动时,会自动打开一个命令提示符窗口,并依次执行以下操作:

打开cmd窗口。
执行 D:\pyve\myve1\Scripts\activate.bat,激活Python虚拟环境。
在同一个cmd窗口中继续执行 streamlit run C:\Users\ZZC\Desktop\py脚本\streamlit\streamlit-visualization-23-st.bar_chart.py,通过Streamlit运行Python脚本。
请确保脚本文件路径是正确的,并根据您的实际情况进行调整。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-7-11 09:16:32 | 显示全部楼层
绿叶游花 发表于 2023-7-11 09:07
能否提供具体的写法?

你确认是windows吗
我的需要py -m streamlit run file1.py    这样才能运行  把这个放在bat里  然后再另一个bat里  call 它  
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-11 09:19:52 | 显示全部楼层
陶远航 发表于 2023-7-11 09:09
您可以尝试以下方法来编写开机执行的批处理脚本:

打开一个文本编辑器(例如记事本)。

感谢你的耐心帮助。
另,上面提供的文件路径有中文,我执行失败。把第二步的文件路径修改为英文的,就执行成功。
再次感谢。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-7-11 09:46:14 | 显示全部楼层
本帖最后由 陶远航 于 2023-7-11 09:47 编辑
绿叶游花 发表于 2023-7-11 09:19
感谢你的耐心帮助。
另,上面提供的文件路径有中文,我执行失败。把第二步的文件路径修改为英文的,就执 ...


非常抱歉给您带来了困扰,确实在批处理脚本中使用中文路径可能会导致执行失败。这是由于命令提示符窗口在处理中文路径时可能会出现问题。

如果您需要在批处理脚本中使用中文路径,可以尝试使用短路径(即使用类似PROGRA~1的短文件名)来代替完整的中文路径。您可以通过以下步骤获取文件的短路径名:

打开命令提示符窗口。
切换到文件所在目录。例如,输入 cd C:\Users\ZZC\Desktop\py脚本\streamlit 并按 Enter 键。
输入 dir /x 并按 Enter 键。将显示目录中的文件列表,每个文件后面都有一个短文件名。
在显示的文件列表中找到您想要使用的文件,并注意其对应的短文件名。然后将批处理脚本中的路径修改为短文件名的形式。

例如,如果 C:\Users\ZZC\Desktop\py脚本\streamlit\streamlit-visualization-23-st.bar_chart.py 的短文件名为 STREAM~1.PY,则将批处理脚本的第二步修改为:

start cmd /k "call D:\pyve\myve1\Scripts\activate.bat & streamlit run C:\Users\ZZC\Desktop\py脚本\streamlit\STREAM~1.PY"

这样应该可以解决中文路径导致的执行问题。如果还有其他问题,请随时向我提问。再次感谢您的理解和耐心!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-7-11 11:31:30 | 显示全部楼层
改成ansi编码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-22 13:25

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表