【发布时间】:2019-08-14 15:32:40
【问题描述】:
我想自动执行一项特定任务,并且我有一个 bash 文件,我想通过运行脚本从用户参数中读取数据
bash my_script.sh /etc/??? path/dst
到目前为止,我通过访问位置参数($1、$2)和变量来获取脚本中的数据,这很好。
但在脚本内部,我想运行一个 python 程序。所以...
python test.py arg1 arg2 arg3
问题是,我必须通过 python 读取数据并访问 my_script.sh 中的输出
有一个约束,我不应该在系统上创建文件。所以我想知道是否使用export,但是导出是易变的,因为它存储变量直到该进程打开,当我回到my_script.sh时,没有任何关于该数据的线索,我也无权编写我的变量,它是~/.bashrc 上的数据。
另外,我已经阅读了 this 和 this,但它们并没有按照我想要的方式工作。
如果你认为我的做法是错误的,请告诉我。
【问题讨论】:
-
不清楚你在问什么。您的脚本可以在写入标准输出时捕获或解析
test.py的输出。 -
我想在脚本中运行的python应用程序不依赖于
script。同样在script中,我想访问我在python 应用程序中处理的数据,正如我所说export可以为我保存任何数据,但是在执行的python 应用程序行之后无法访问,我的意思是在其余部分我无法访问导出变量的脚本。我可以解析标准输出吗?怎么样? -
output=$(python test.py arg1 arg2 arg3),然后用$output做你想做的事。export只将信息从父进程传递给子进程,而不是另一个方向。
标签: python linux python-3.x bash