我在我的bash脚本中调用了一个python脚本,我想知道是否有一种简单的方法可以在我的python脚本中设置我的bash变量.
例:
我的bash脚本:
#!/bin/bash
someVar=""
python3 /some/folder/pythonScript.py
Run Code Online (Sandbox Code Playgroud)
我的python脚本:
anotherVar="HelloWorld"
Run Code Online (Sandbox Code Playgroud)
有没有办法可以将someVar设置为anotherVar的值?我想在python脚本中的文件中打印属性,然后从我的bash脚本中读取它们,但也许还有另一种方法.另外我不知道也不认为它有任何区别,但我可以使用相同的名称命名两个变量(someVar/someVar而不是someVar/anotherVar)
不,当您执行时python,您启动一个新进程,并且每个进程只能访问自己的内存.想象一下,如果一个进程可能影响另一个进程内存会发生什么!即使对于像这样的父/子进程,这也是一个巨大的安全问题.
你可以制作python print()并使用它,但是:
#!/usr/bin/env python3
print('Hello!')
Run Code Online (Sandbox Code Playgroud)
在你的shell脚本中:
#!/usr/bin/env bash
someVar=$(python3 myscript.py)
echo "$someVar"
Run Code Online (Sandbox Code Playgroud)
当然,还有许多其他可以使用的IPC技术,例如套接字,管道,共享内存等......但是没有上下文,很难提出具体的建议.