我想使用獨立的wsadmin來執行後期部署腳本。它應該刪除配置文件(/ profile/temp/profile/myCacheFolder)上的所有緩存。我的問題是,是否可以用wsadmin做到這一點?如果是這樣如何?我能以某種方式使用AdminConfig.deleteDocument或類似的東西嗎?wsadmin + jython刪除文件夾
謝謝
我想使用獨立的wsadmin來執行後期部署腳本。它應該刪除配置文件(/ profile/temp/profile/myCacheFolder)上的所有緩存。我的問題是,是否可以用wsadmin做到這一點?如果是這樣如何?我能以某種方式使用AdminConfig.deleteDocument或類似的東西嗎?wsadmin + jython刪除文件夾
謝謝
隨着AntAgent
的MBean,您可以上傳Ant腳本,然後調用它的遠程節點上:
from java.lang import String
import jarray
fileContent = '<project name="cleanup" default="cleanup"><target name="cleanup"><delete dir="${user.install.root}/temp" /><delete dir="${user.install.root}/wstemp" /></target></project>'
antAgent = AdminControl.makeObjectName(AdminControl.queryNames('WebSphere:*,type=AntAgent,process=dmgr'))
str = String(fileContent)
bytes = str.getBytes()
AdminControl.invoke_jmx(antAgent, 'putScript', [String('cleanup.xml'),bytes], jarray.array(['java.lang.String', '[B'], String))
AdminControl.invoke_jmx(antAgent, 'invokeAnt', [jarray.array([], String), String('cleanup.xml'), String('cleanup')], jarray.array(['[Ljava.lang.String;', 'java.lang.String', 'java.lang.String'], String))
fileContent
變量你Ant腳本,你可能需要調整它多一點,特別是在Windows上,以處理被阻止的文件/目錄。
wsadmin.sh可以使用Jython啓動,Python是Java。
所以,你可以使用Python缺省類: import os os.rmdir('/a/b/c')
另外,如果你的系統是Unix: import os os.sys('rm -r /a/b/c') or os.system('rm -r /a/b/c')
上述命令將刪除/ A/B目錄 'C'。 使用os.remove('filename')刪除文件。