Zkontrolujte příponu pythonu, měla by být .py místo .sh1.sh
#!/bin/bash
test_var="Test Variable"
export test_var
echo "1.sh has been executed"
python 2.py
os knihovna vám poskytne přístup k proměnné prostředí. Následující kód pythonu vám poskytne požadovaný výsledek,
#!/usr/bin/env python3
import os
print("The python script has been invoked successfully")
print(os.environ['test_var'])
Podívejte se na odkaz:Jak získám přístup k proměnným prostředí z Pythonu?
Chcete-li použít proměnné prostředí z vašeho python skriptu, musíte zavolat:
import os
os.environ['test_var']
os.environ
je slovník se všemi proměnnými prostředí, můžete použít všechny metody, které má dict. Můžete například napsat:
os.environ.get('test_var', 'default_value')
Zabíjení podprocesu spuštěného sudo v pythonu
Chování polí ve skriptování bash a shellu zsh (počáteční index 0 nebo 1?)