python 调用shell 脚本

复制代码
import subprocess

# 定义脚本路径和参数
script_path = './example.sh'
param1 = '参数1'
param2 = '参数2'
param3 = '参数3'

# 调用 Shell 脚本并传递参数
subprocess.run([script_path, param1, param2, param3])

如果版本较高的情况下可以使用这个命令

复制代码
import subprocess

# 定义脚本路径和参数
script_path = './example.sh'
param1 = '参数1'
param2 = '参数2'
param3 = '参数3'

# 调用 Shell 脚本并传递参数
result = subprocess.run([script_path, param1, param2, param3], capture_output=True, text=True)

# 输出脚本的结果
print("输出:", result.stdout)
print("错误:", result.stderr)
  • subprocess.run() 用于执行 Shell 命令或脚本。

  • 参数传递格式为列表 [script_path, param1, param2, param3],相当于在终端运行 ./example.sh 参数1 参数2 参数3

  • capture_output=True 将标准输出和标准错误捕获到 result.stdoutresult.stderr 中。

  • text=True 将输出以字符串形式返回,方便进一步处理。
    如果python 版本很低

    import subprocess

    调用 shell 脚本,并传入三个参数

    return_code = subprocess.call(['sh', 'your_script.sh', 'arg1', 'arg2', 'arg3'])

    print("Return Code:", return_code)

相关推荐
倔强的石头1066 分钟前
【Linux指南】基础IO系列(七):“一切皆文件” 底层实现 ——struct file 与统一 IO 接口的魔法
linux·运维·服务器
网络小白不怕黑6 分钟前
1.1 VMware部署Rocky Linux 9 (GPT分区表,最小化安装)
linux·服务器·gpt
Greyson17 分钟前
mysql查询执行过程中如何追踪耗时_使用PROFILE分析指令周期
jvm·数据库·python
Anesthesia丶10 分钟前
Qwen2.5-1.5b 模型部署与LORA训练笔记
pytorch·python·lora·llm·qwen·vllm
解救女汉子13 分钟前
CSS如何实现水平垂直居中效果_利用flex布局的justify-content与align-items
jvm·数据库·python
满天星830357714 分钟前
【Linux/多路复用】poll和epoll的使用
linux·服务器·c++·后端
2301_7735536214 分钟前
CSS如何解决栅格重叠问题_使用Grid-area明确划分元素占位
jvm·数据库·python
快乐的划水a16 分钟前
单片机仿Linux驱动开发(一)
linux·驱动开发·单片机
覆东流17 分钟前
第6天:python综合练习——制作简易计算器
开发语言·后端·python
步辞20 分钟前
JavaScript中Symbol-keyFor检索全局符号键名逻辑
jvm·数据库·python