我正在尝试从Python中获取多个变量,以便用作Bash中的变量。虽然我有python作为源代码,但它可以是任何程序/脚本,但不能是文件。
我可以用一个临时文件获取源代码来完成这项工作。所以我想问题是,如何从脚本输出到源代码?
源python可以输出任意和/或多个key=value,因此简单的x=$(python脚本(是不起作用的。
Python snip示例
print("STARTDATE=" + STARTDATE)
print("STARTTIME=" + STARTTIME)
输出
STARTDATE=06/15/2021
STARTTIME=15:46:21.00
使用临时文件的Bash工作示例
python script > temp.file
source temp.file
echo $STARTDATE
Echo只是在这里进行调试,我会在变量上进行工作
失败的尝试:
source python script
source <(python script)
eval $(python script)
字符串周围需要空格,还需要确保在"因此:
print("STARTDATE="" + STARTDATE + """)
print("STARTTIME="" + STARTTIME + """)
确保您使用的是bash-shell而不是sh,然后您应该能够操作脚本并使用设置变量
source <(./script.py)
或者在脚本中:
#!/bin/bash
source <(./script.py)