将 python 变量传递给嵌入式 shell 脚本?

将 python 变量传递给嵌入式 shell 脚本?

我有一个现有的 python 代码,我需要从内部调用 bash 脚本。 python 代码捕获了一些变量,我需要将其传递到我的 shell 以避免用户重复输入。

我创建了一个测试脚本来模拟这一点,但是,我无法回显 shell 中的变量(它返回 null )

1): 是否可以将 python 变量传递给使用子进程调用的 shell 脚本? 2)如果可以优化下面的代码来实现这一点,我愿意接受反馈。

Python代码:

import os
import subprocess

first=input("Enter the first ip")
second=input("Enter the second IP")

subprocess.call(['bash','./script.sh',first,second])

Bash 代码(script.sh):

#!/bin/bash
###########################
echo "The First IP is $first"
echo "Enter your server "
read faulty_server
echo "The server is $faulty_server"

答案1

Bash 脚本中的第一个参数不是叫$first,而是$1

Bash 脚本中的第二个参数不是叫$faulty_server,而是$2

相关内容