python - 我可以在当前 shell 中从 python 脚本运行 shell 命令吗
问题描述
我有一个 python 脚本,它调用两个不同的 shell 脚本。第一个脚本设置了第二个脚本所需的一些环境变量。python代码具有以下结构:
import subprocess
subprocess.call(["bash", "a.sh"]) #a.sh sets env_var1
subprocess.call(["bash", "b.sh"]) #b.sh reads env_var1
因为脚本a.sh
和b.sh
运行在不同的shell中,上面的代码没有做必要。我想知道我们可以在当前shell本身中从python执行这些shell脚本吗
解决方案
您可以使用此行在 python 中向您的 shell 运行命令 os.system('command to run here')
在您的情况下,它将类似于:
import os
os.system('./a.sh')
os.system('./b.sh')
推荐阅读
- python - 在熊猫数据框中给出指定的产品ID时如何返回特定的评论数据
- batch-file - 将 echo 命令插入到正在运行的命令行中
- video-streaming - 我在哪里可以找到 Agora HTTP 基本授权令牌?
- sql - 多部分标识符无法在 SQL Server 中绑定并混淆
- intellij-idea - Intellij Plugin PsiViewer 在调试插件时不显示
- laravel - 在 laravel 中验证时出现致命异常“Method Illuminate\Validation\Rules\RequiredIf::__toString() 不得抛出异常”
- rust - 指向具有生命周期参数的方法的函数指针的类型
- ionic-framework - 如何在带电容器的 Ionic 5 项目中使用 Pushwoosh
- arrays - 处理:有没有办法将我的形状放入一个循环中并使我的代码更短?
- c# - 基于任务的行为正在阻塞父线程