如何通过wsadmin从Windows批处理(.bat)文件运行单个命令

时间:2019-11-05 03:25:41

标签: batch-file websphere

我一直在尝试在Windows服务器上实现批处理文件以执行wsadmin命令。

@ECHO OFF
cmd /K "D:\IBM\WebSphere\AppServer\profiles\ctgAppSrv01\bin\wsadmin.bat -lang jython -user wasadmin -password wasadmin && $AdminControl invoke $KCLUSTER rippleStart"

这将使我登录到会话中,但没有输入第二部分 $ AdminControl调用$ KCLUSTER波纹启动

下面的图像是批处理文件停止并且不进一步进入 $ AdminControl调用$ KCLUSTER涟漪图部分的地方。

enter image description here

在Windows 2012 Server上是否可以使用批处理文件或另一种方式来做到这一点?

在没有运气的情况下搜索了网,看这是否在死胡同之前发生过。 我试过使用Call命令,但没有结果。

对于从这里到哪里的任何方向都非常感激

1 个答案:

答案 0 :(得分:1)

您可以启动wsadmin来从Windows .bat文件执行单个命令,例如:

@ECHO OFF
cmd /K ""D:\IBM\WebSphere\AppServer\profiles\ctgAppSrv01\bin\wsadmin.bat" -lang jython -c "print AdminControl.invoke(kcluster, 'rippleStart')""

这将以三种方式更改您的原始帖子。

  1. 最近的大多数示例和用法都使用Jython,所以我改用了它。 (您使用-lang jython启动了wsadmin,但使用的是类似Jacl的语法$AdminControl...。)
  2. 我使用wsadmin ... -c传递了要执行的命令,而不是&&语法。
  3. 我使用嵌套引号将命令的元素分开。

当然,仅当您先前在脚本或wsadmin会话中设置了kcluster时,此方法才有效。要“开箱即用”查看此语法,您可以尝试类似AdminApp.list()之类的东西:

@ECHO OFF
cmd /K ""D:\IBM\WebSphere\AppServer\profiles\ctgAppSrv01\bin\wsadmin.bat" -lang jython -c "print AdminApp.list()""