我遇到的两部分问题。 我正在使用ArcSight控制台,需要将变量从ArcSight传递到python脚本。但是,我无法访问独立的Python,只能运行Cygwin客户端来运行python。
步骤1)启动Cygwin并自动运行python脚本
我目前的Cygwin批处理文件是:
@echo off
c:
chdir C:\cygwin\bin
bash --login -i
步骤2)将原始命令行中的变量传递给argv
的python脚本python myscript var1 var2 var3
我是否为此做了很长的路,或者我是否尝试了不可能的事情?
解决方案
现在启动cygwin的批处理文件如下所示:
@echo off
c:
chdir c:\cygwin\bin
bash --login -i ./my_script.sh var1 var2 var3
my_script.sh是一个bash脚本,它将变量传递给python并启动python脚本。
#!/bin/bash
echo "my_var1 = '$1'" > vars.py
echo "my_var2 = '$2'" >> vars.py
echo "my_var3 = '$3'" >> vars.py
python my_python.py
Python脚本从vars.py中导入变量:
import vars
print "Foo is %s" % (vars.my_var1)
巨大的痛苦但是由于我们的工作机器可以安装的安全限制,这是必须完成的方式。想要留下这个,以防其他人遇到类似的问题。
答案 0 :(得分:0)
在我最初的问题中查看解决方案。