python - 无法在 Windows 上使用 os.system() 调用 bash 脚本
问题描述
我有一个非常简单的 bash 脚本test.sh
,如下所示
#!/usr/bin/env bash
mkdir "/c/AAA"
我想在 python 中执行这段代码。当我os.system(r"Y:\test.sh")
在 python 中调用时,会弹出一个窗口并询问我要打开哪个程序test.sh
。然后 python 将以输出 0 结束,并且在我的 C 驱动器中没有创建任何文件夹。我在网上找不到任何解决方案。任何帮助将不胜感激。:)
解决方案
os.system() 会像 windows cmd 一样调用你的命令,在这种情况下,windows 不知道如何执行 *.sh 文件,所以它会打开它的默认对话框,这样你就可以选择一个你知道可以的程序运行它。
如果您打开 Windows 终端并尝试调用此类文件,也会发生同样的情况。
如果您的窗口有 bash 解释器,请尝试像这样调用它:
os.system("bash Y:\test.sh")
推荐阅读
- routing - HAProxy - 无法使用路径 ACL 重定向具有相似 URL 的请求
- arrays - VBA - 从数组中的字符串执行代码
- java - 使用 vlcj 读取 Java rtsp 流
- python - 获取每行的numpy数组中最大值的索引?
- c# - 如何使用 C# 调用带有记录表输出参数的 PL/SQL 存储过程?
- php - Android 通过 PHP 连接 MySQL,但内容未通过
- r - 使用循环来用鼠标估算数据帧,使用列表中的预测矩阵
- ios - 对齐所有设备上的导航按钮
- vue.js - 即使数据不敏感,通过身份验证保护 API 是否是好的做法或有必要?
- google-chrome - 使用webpack时后台和popup如何连接