我正在运行一个bash脚本,其中包含python中的许多其他命令
mybash.sh:
#!/bin/bash
var=10
echo variable is equal to $var
并在运行.sh
if echo variable is equal to $var == echo variable is equal to 10:
print ('variable is 10')
我尝试通过:
process = Popen('sh mybash.sh', shell=True, stdout=PIPE, stdin=PIPE)
我尝试在bash脚本中获取每个命令的args值,但process.args
只返回sh mybash.sh
。如何在脚本执行时逐行返回每个命令的args值?
答案 0 :(得分:1)
您没有在python中运行bash脚本。您正在运行运行mybash.sh脚本的bash解释器(sh)。您无法从python访问单个bash命令,但可以使用-x标志。
CREATE MATERIALIZED VIEW LOG ON "CSTST"."LLATTRDATA"
PCTFREE 10 PCTUSED 30 INITRANS 1 MAXTRANS 255 LOGGING
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE "CSPRD"
WITH ROWID INCLUDING NEW VALUES;