我們確實有一個操作腳本來停止、重新啟動和啟動 tomcat 服務。我被要求在操作腳本中進行更改,因此在使用 operation_script.sh 啟動 tomcat 時,應在每次應用程式啟動時洗掉目錄 tomcat_*/temp 中的所有檔案。
腳本很長,所以我會做片段。
## service tomcat
if [[ ${service} == "tomcat" ]]; then
case ${operation} in
stop) # stop tomcat java processes
$DIR/command_bsiadmin.sh "
sudo /usr/bin/systemctl stop bsicrm_${port_ui}.service;
sudo /usr/bin/systemctl stop bsicrm_${port_be}.service;
sudo /usr/bin/systemctl stop bsicrm_${port_se}.service; " "$1"
tomcat_status
;;
start) # start tomcat java processes
$DIR/command_bsiadmin.sh "
find /opt/tsi/app/tomcat_*/temp/* -exec rm -rf {} \; 2>/dev/null; # Here I apply my solution
sudo /usr/bin/systemctl start bsicrm_${port_se}.service;
sudo /usr/bin/systemctl start bsicrm_${port_be}.service;
sudo /usr/bin/systemctl start bsicrm_${port_ui}.service;
在tomcats啟動后,沒有一個臨時檔案被洗掉。測驗了幾次,但我不知道我在哪里做錯了。不應該find -exec rm命令洗掉目錄 tomcat_*/temp 中的所有檔案???提前致謝!
uj5u.com熱心網友回復:
我不確定在 . 之后使用另一個分號 。嘗試洗掉分號,看看是否有幫助。
而且你真的不需要使用find,因為你已經在使用遞回模式了。 rm -fr -- /opt/tsi/app/tomcat_*/temp/*應該足夠了。啟用nullglob. 不要添加2>/dev/null,所以您會看到錯誤。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/416439.html
標籤:
