Scripting 在jacl和wsadmin中使用变量

Scripting 在jacl和wsadmin中使用变量,scripting,websphere,tcl,wsadmin,jacl,Scripting,Websphere,Tcl,Wsadmin,Jacl,我试图在jacl上wsadmin的安装脚本中使用变量。首先我要说明 set nodeName [$AdminControl getNode] set cellName [$AdminControl getCell] 然后在我的脚本中,我想使用这两个变量,但出于某种原因,它确实想使用它们 $AdminApp install C:/ssc.war { -nopreCompileJSPs -installed.ear.destination $(APP_INSTALL_ROOT)/$(CELL) -

我试图在jacl上wsadmin的安装脚本中使用变量。首先我要说明

set nodeName [$AdminControl getNode]
set cellName [$AdminControl getCell]
然后在我的脚本中,我想使用这两个变量,但出于某种原因,它确实想使用它们

$AdminApp install C:/ssc.war { -nopreCompileJSPs -installed.ear.destination $(APP_INSTALL_ROOT)/$(CELL) -distributeApp -nouseMetaDataFromBinary -nodeployejb -appname ssc_war -createMBeansForResources -noreloadEnabled -nodeployws -validateinstall warn -noprocessEmbeddedConfig -filepermission .*\.dll=755#.*\.so=755#.*\.a=755#.*\.sl=755 -noallowDispatchRemoteInclude -noallowServiceRemoteInclude -asyncRequestDispatchType DISABLED -nouseAutoLink -noenableClientModule -clientMode isolated -novalidateSchema -contextroot /ssc -MapModulesToServers {{"F" ssc.war,WEB-INF/web.xml WebSphere:cell=$**cellName**,node=$**nodeName**,server=server1}} -MapWebModToVH {{"Fortify Portal" ssc.war,WEB-INF/web.xml default_host}} -CtxRootForWebMod {{"Fortify Portal" ssc.war,WEB-INF/web.xml /ssc}}}

您提供的初始脚本中的语法可能有问题,我没有看到使用变量nodeName或cellName的任何尝试。另外,你真的关心提供所有这些论点吗?大多数都是默认值。此外,您没有在.war路径周围加引号,这是必需的

要在wsadmin脚本中使用变量,请在变量名称前面加一个$符号。例如:

set myvar "test"
puts $myvar
因此,要安装应用程序,应该简单到:

set cellName [$AdminControl getCell]
set nodeName [$AdminControl getNode]
set serverName [$AdminControl getServer]
$AdminApp install "C:/ssc.war" {
    -node $nodeName 
    -cell $cellName 
    -server $serverName
}
我建议看一看IBM doc for WebSphere脚本,它描述了您尝试执行的操作: