繁体   English   中英

自动从Cygwin批处理中执行python脚本

[英]Auto execute a python script from a Cygwin batch

我遇到的问题分为两部分。 我正在使用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)

这是一个巨大的痛苦,但是由于工作机器可以安装的安全性受到限制,因此必须采用此方法。 希望将其保留在此处,以防其他人遇到类似问题。

请参阅我最初的问题中的解决方案。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM