背景:java項(xiàng)目往往一個(gè)大工程里分多個(gè)模塊胁镐。gitlab發(fā)版java項(xiàng)目時(shí)只估,每次可能都發(fā)版不同模塊。時(shí)間一長占用磁盤空間太大掺喻,刪除舊jar文件時(shí)需要每個(gè)發(fā)版目錄都確認(rèn)一下芭届,每個(gè)jar文件保留最后幾次發(fā)版文件,方便回滾感耙」诱В基于此,該腳本誕生即硼。
文件:del_old_jar_file.sh
-
jar_parent_dir
:腳本內(nèi)變量树叽,指的是項(xiàng)目發(fā)布目錄的上級(jí)目錄,我這里示例中是固定的:/home1/java
谦絮。若不一致可修改 - 參數(shù)
$1
:腳本參數(shù)题诵,指項(xiàng)目發(fā)布目錄。比如gitlab發(fā)版到/home1/java/demo
层皱,該值就是demo
- 特性:
- 每個(gè)jar文件保留最后3次發(fā)版文件性锭。若需,可修改腳本內(nèi)
lastn
變量 - 刪除jar文件后叫胖,檢查目錄是否存在jar文件草冈,存在則跳過,否則刪除該目錄
- 每個(gè)jar文件保留最后3次發(fā)版文件性锭。若需,可修改腳本內(nèi)
- 使用:
- 將
del_old_jar_file.sh
拷貝到/home1/java
chmod +x del_old_jar_file.sh
./del_old_jar_file.sh demo
- 以下為輸出結(jié)果:
[root@gp8bscefb0iZ java]# ./del_old_jar_file.sh demo clear dir: demo delete jar file: /home1/java/demo/java_#8703/daily-report-data-sync-1.0.0.jar delete jar file: /home1/java/demo/java_#8719/daily-report-data-sync-1.0.0.jar delete jar file: /home1/java/demo/java_#8720/daily-report-data-sync-1.0.0.jar delete jar file: /home1/java/demo/java_#7950/data-compatible-1.0.0.jar delete jar file: /home1/java/demo/java_#7955/data-compatible-1.0.0.jar delete jar file: /home1/java/demo/java_#7434/old-data-migration-1.0.0.jar delete jar file: /home1/java/demo/java_#7955/old-data-migration-1.0.0.jar 刪除目錄: /home1/java/demo/java_#7434 刪除目錄: /home1/java/demo/java_#7450 刪除目錄: /home1/java/demo/java_#7950 刪除目錄: /home1/java/demo/java_#7955 刪除目錄: /home1/java/demo/java_#8027 刪除目錄: /home1/java/demo/java_#8036 刪除目錄: /home1/java/demo/java_#8703 刪除目錄: /home1/java/demo/java_#8719 刪除目錄: /home1/java/demo/java_#8720 目錄 /home1/java/demo/java_#8779 包含 .jar 文件瓮增,跳過刪除 刪除目錄: /home1/java/demo/java_#8957 目錄 /home1/java/demo/java_#9710 包含 .jar 文件怎棱,跳過刪除 目錄 /home1/java/demo/java_#9711 包含 .jar 文件,跳過刪除 目錄 /home1/java/demo/java_#9786 包含 .jar 文件绷跑,跳過刪除 目錄 /home1/java/demo/java_#9794 包含 .jar 文件拳恋,跳過刪除 目錄 /home1/java/demo/java_#9795 包含 .jar 文件,跳過刪除 刪除目錄: /home1/java/demo/java_#9936 [root@gp8bscefb0iZ java]#
- 將
版本
2024-08-07
- 新增:刪除舊jar文件:
del_old_jar_file.sh
2024-08-05
- 新增:追蹤進(jìn)程:
tracep
2024-08-01
- cdp支持檢索jar包名稱砸捏。參考arthas腳本
as.sh
中參數(shù)解析谬运。- 示例:
cdp demo-test
# 若只有一個(gè)進(jìn)程則直接進(jìn)入相應(yīng)目錄;若多個(gè)進(jìn)程則列出進(jìn)程選項(xiàng)垦藏,輸入相應(yīng)序號(hào)并回車后進(jìn)入相應(yīng)目錄 - 示例:
cdp -v demo-test
# 若只有一個(gè)進(jìn)程則直接進(jìn)入相應(yīng)目錄梆暖;若多個(gè)進(jìn)程則列出進(jìn)程選項(xiàng)(顯示啟動(dòng)參數(shù),參考jps -lv
)掂骏,輸入相應(yīng)序號(hào)并回車后進(jìn)入相應(yīng)目錄 - 示例:
cdp <pid>
# 利用jps
查進(jìn)程轰驳,并不是直接進(jìn)入相應(yīng)目錄。若只有一個(gè)進(jìn)程則直接進(jìn)入相應(yīng)目錄弟灼;若多個(gè)進(jìn)程則列出進(jìn)程選項(xiàng)级解,輸入相應(yīng)序號(hào)并回車后進(jìn)入相應(yīng)目錄
- 示例: