Eu tenho um código python existente e preciso chamar um script bash de dentro. O código python captura poucas variáveis e eu preciso que isso seja passado para o meu shell para evitar entrada duplicada do usuário.
Eu criei um script de teste para simular isso, no entanto, não consigo ecoar as variáveis no shell (ele retorna um null )
1): É possível passar a variável python para o script de shell que está sendo chamado usando o subprocesso? 2) Se o código abaixo puder ser otimizado para conseguir isso, estou aberto a comentários.
Código Python:
import os
import subprocess
first=input("Enter the first ip")
second=input("Enter the second IP")
subprocess.call(['bash','./script.sh',first,second])
Código bash (script.sh):
#!/bin/bash
###########################
echo "The First IP is $first"
echo "Enter your server "
read faulty_server
echo "The server is $faulty_server"
O primeiro parâmetro no script Bash não é chamado
$first
, mas sim$1
.O segundo parâmetro no script Bash não é chamado
$faulty_server
, mas sim$2
.