簡體   English   中英

如何將參數從 Shell 傳遞到 WLST 腳本

[英]How to pass a parameter from Shell to WLST script

編輯:問題已解決。 但我把它留在這里,所以其他人將從這里受益。 如果不合適,我會刪除問題。

我想按順序自動停止服務器。 因此,我為此編寫了一個腳本,一個是 Python,另一個是 bash。 WLST 腳本

import sys
managedserver = sys.argv[1]
#while True:
#   try:
#   connect('weblogic', 'weblogic1', 't3://machine-1:7001')
#   break
#   
#   except Exception:
#   print("can't connect to AdminServer")
connect('weblogic', 'welcome1', 't3://machine-1:7001')

shutdown(managedserver,ignoreSessions='false', force='false')
#if state(managedserver,name='managedserver') == 'SUSPENDED':
#   time.sleep(60)
#   shutdown(managedserver,name='managedserver',ignoreSessions='true', force='true')
#elif state(managedserver,name='managedserver') == 'RUNNING':
#   shutdown('managedserver',name='managedserver',ignoreSessions='true', force='true')
#else:
#   break

exit()

我使用以下腳本調用該腳本。

echo "############################"
echo "# All Servers are STOPPING #"
echo "############################"
# Shutting down servers
WLST_Bin=/data/mw/12213/wls/ohome/oracle_common/common/bin
for managedserver in MOBIL-TEST-S01-2201 MOBIL-TEST-S01-2202
do 
    echo " Shutting Down ${server} !!! "
    sh ${WLST_Bin}/wlst.sh ServerStop.py $managedserver
    sleep 600
    
done

我得到的錯誤是WLSTException: Error occurred while performing shutdown : No server, cluster, system component or system component configuration with name "managedserver" configured in the domain

這是因為我無法將參數傳遞給 WLST 腳本。 我在網上搜索,但找不到任何東西。

您可以將參數傳遞給 WLST 腳本。 您應該使用sys.argv[i].閱讀它sys.argv[i].

樣本:

if len(sys.argv) == 3:
    decrypt(sys.argv[1], sys.argv[2])

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM