首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从powershell调用wlst / jython

从powershell调用wlst / jython
EN

Stack Overflow用户
提问于 2013-01-16 15:42:41
回答 1查看 1.8K关注 0票数 0

我想用参数从powershell调用wlst/jython脚本。(这是一个简化的版本)

hello.ps1

代码语言:javascript
复制
 param (
    [string]$cmd = "none"
 )

echo "cmd - $cmd"
Switch ($cmd) {
     "hello" {
             Write-Host "Start hello ..."
             $script='C:\_WORK_\hello.py'
             & java -cp C:\bea\tpc\WEBLOG~1\server\lib\weblogic.jar weblogic.WLST $script
         }
     "main" {
             Write-Host "w main $cmd" 
             $cmd='-c "hello"'
             $script="C:\_WORK_\hello_main.py"
             Write-Host "script: $script"
             & java -cp C:\bea\tpc\WEBLOG~1\server\lib\weblogic.jar weblogic.WLST $script $cmd
     }
     Default {Write-Warning "Invalid Choice. Try again."
                  sleep -milliseconds 750}
    } #switch

hello.py

代码语言:javascript
复制
print "Hello without main/args"

hello_main.py

代码语言:javascript
复制
import getopt

def main():
    try:
        opts, args = getopt.getopt(sys.argv[1:], "hc:v", ["help", "command="])
    except getopt.GetoptError, err:
        # print help information and exit:
        print str(err) # will print something like "option -a not recognized"
        usage()
        sys.exit(2)
    command = None
    verbose = False
    for o, a in opts:
        if o == "-v":
            verbose = True
        elif o in ("-h", "--help"):
            usage()
            sys.exit()
        elif o in ("-c", "--command"):
            command = a
        else:
            assert False, "unhandled option"
    print 'command: '+command
    if (command == 'hello'):
        print "if hello"

if __name__ == 'main':
    main()

与"hello.ps1 -cmd main“脚本在"print”命令之后终止:‘+命令’我不知道为什么是

代码语言:javascript
复制
>powershell c:\_WORK_\SAS\hello.ps1 -cmd main
cmd - main
w main main
script: C:\_WORK_\SAS\hello_main.py

Initializing WebLogic Scripting Tool (WLST) ...

command:  hello

>powershell c:\_WORK_\SAS\hello.ps1 -cmd hello
cmd - hello
Status ...

Initializing WebLogic Scripting Tool (WLST) ...

Hello without main/args
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-01-21 11:13:49

代码语言:javascript
复制
 "main" {
         Write-Host "w main $cmd" 
          $arg0 = "C:\_WORK_\SAS\hello_main.py"
          $arg1 = "-c"
          $arg2 = "hello"

          $allArgs = @($arg0, $arg1, $arg2)

         & java -cp C:\bea\tpc\WEBLOG~1\server\lib\weblogic.jar weblogic.WLST $allArgs
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14362207

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档