[英]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.