#! /bin/sh
#get_current_time
export JAVA_HOME=/opt/jdk1.6.0_10/
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$CLASSPATH
date=`date "+%Y-%m-%d-%H:%M:%S"`
Root="/data/dxm/"
jmapends=$Root$date"_jmap.txt"
jstackends=$Root$date"_jstack.txt"
jstateends=$Root$date"_jstate.txt"
#start to register the jmap message
echo "start to register the jmap to "$jmapends
jmap -histo:live `jps|grep Resin |awk 'NR==1'|awk '{print $1}'` > $jmapends
sleep 2
#start to register the jtack message
echo "start to register the jstack to "$jstackends
jstack -l `jps|grep Resin |awk 'NR==1'|awk '{print $1}'` > $jstackends
sleep 2
#start to register the jstate message
echo "start to register the jstate message to "$jstateends
jstat -gcutil -t -h20 `jps|grep Resin |awk 'NR==1'|awk '{print $1}'` 1000 20 > $jstateends
这个可以跑个定时器:
crontab -e
*/10 * * * * sh /timer/timer.sh #每十分钟抓一次
第二个脚本:比较两个版本中jar包是否相同(有改变):
#! /bin/sh
#compare the lib files's md5 int file1 with those in file2
#if it only exist in file1 or one lib file's md5 is not equal i
#with the other then print it to the log.txt
LibPath1=$1
LibPath2=$2
date=`date "+%Y-%m-%d-%H:%M:%S"`
LOG=$date"_log.txt"
echo "-----------log file " $LOG
echo LibPath1: $LibPath1
echo LibPath2: $LibPath2
echo LibPath1: $LibPath1 \n >> $LOG
echo LibPath2: $LibPath2 \n >> $LOG
echo >> $LOG
echo >> $LOG
for File in `ls -f $LibPath1|grep jar `;
do
MD5=`md5sum $1$File |awk 'NR==1'|awk '{print $1}'`
File2=$LibPath2$File
#echo "File2-----------------" $File2
#if the same lib file exist
if [ ! -f "$File2" ]; then
echo $File only exist LibPath1
echo $File only exist LibPath1 \n >> $LOG
echo >> $LOG
#if the same file exist in directory2
else
MD52=`md5sum $File2 |awk 'NR==1'|awk '{print $1}'`
if [ "$MD5" != "$MD52" ]; then
echo the $File changed \n >> $LOG
echo >> $LOG
echo the $File changed
fi
fi
done
上的那个文件为
md5compare.sh
运行是可以用以下命令运行:
./md5compare.sh libpath1 libpath2
注意libpath1,libpath2 必须以"/" 结尾比如:
/opt/ROOT_2011-09-08-09:57:26/WEB-INF/lib/
而不是
/opt/ROOT_2011-09-08-09:57:26/WEB-INF/lib
分享到:
相关推荐
maven-shell-plugin-1.1.jar
"shell-perl-python等脚本文件加密工具"这个主题就涉及到这样一个工具——shc。 shc(Shell Script Compiler)是一款开源工具,它能够将Shell脚本转换成二进制可执行文件,从而达到加密和保护脚本源码的目的。shc的...
实例学习shell脚本的使用,能更快的属性到shell,掌握shell
Shell脚本是Linux/Unix操作系统中的一个强大工具,它允许用户编写自动化任务,执行一系列命令,简化日常操作。本文将详细解析Shell脚本中的常用命令,帮助你更好地理解和利用这一强大的资源。 1. **基本结构** - ...
Linux Shell编程-脚本运行与变量置换(MD笔记)
Shell脚本一键启动和停止jar,包含启动所有,启动指定的jar,停止所有,停止指定的jar,重启所有的jar
"sqlite-shell-win32-x86-3080200.zip" 是SQLite针对Windows 32位平台的命令行接口(shell)的压缩包,版本号为3.8.2.0。这个压缩包包含了一个名为"sqlite3.exe"的可执行文件,它是SQLite Shell,也就是SQLite的...
shell脚本 是一种shell编写的脚本程序。 shell编程跟Java、PHP 编程一样,只要有一个能编写代码的文本编辑器和一个能解释执 行的脚本解释器就可以了。 为什么要学习和使用shell? Shell属于内置的脚本 程序开发的...
而Shell脚本则是Linux或Unix操作系统中进行批处理任务和自动化操作的脚本语言。在本场景中,我们有两个文件——`startup.sh`和`shutdown.sh`,它们是用于启动和停止Spring Boot应用的Shell脚本,其中还涉及到内存...
shell-curl小例子,md5加密,shell时间处理
gnome-shell-extension-installer, 用于搜索和安装 extensions.gnome.org的扩展的bash脚本 GNOME shell-扩展安装程序一个bash脚本,用于从 extensions.gnome.org 安装和搜索扩展。 帮助Usage: gnome-shell-extension...
org.apache.felix.shell-1.4.3.jar, org.apache.felix.shell.tui-1.4.1.jar, org.osgi.compendium-4.0.0.jar, org.osgi.core-4.1.0.jar, oval-1.31.jar, plexus-container-default-1.0-alpha-10.jar, plexus-utils-...
前言:打包好的springboot项目,可以使用java -jar xxx.jar的方式启动。当出现多个springboot项目需要启动的时候,可以使用脚本启动的方式。这在springcloud项目的开发测试阶段尤为有用。以下展示启动脚本示例,过程...
下面我们将详细探讨Shell脚本的使用步骤以及与之相关的jar包。 一、Shell脚本的使用步骤 1. **创建脚本文件** 首先,我们需要创建一个文本文件,以`.sh`为扩展名,例如`myscript.sh`。这可以通过任何文本编辑器...
Apache-flink 未授权访问任意jar包上传反弹shell
shell常用脚本:http、httpd、jdk1.7、jdk1.8、ip-location、kafka、lamp、nginx、nodejs、openssl、python、php、prce8、redis、rvm、tomcat、zabbix、nvm。。。。。。。。。。等等,不在逐一赘述,可以下载使用
支持批量启动jar,停止jar,重启jar,同时也支持单个jar的启动,停止,重启. ./service.sh start all ./service.sh start homesaty
shell脚本 shell脚本 shell脚本 shell脚本 shell脚本
android13 WindowManager-Shell.jar
cd reverse-shell-generator 3. Install Dependencies: pip3 install -r requirements.txt 4. Run the Python-file: python3 main.py 通过脚本安装: chmod +x install.sh ./install.sh 完毕! 由SoftwareUser23...