文章目录 1. jar包启动脚本 2. 进程关闭脚本 3. 操作mysql 4. impala建表语句提取 5. 监控磁盘存量 6. 清日志脚本 7. 替换tomcat的启动端口 8. 将一行数据按照空格依次读取
1. jar包启动脚本
1.1 方式一
#!/bin/sh
RESOURCE_NAME = /usr/local/applications/screen/monitors-0.0.1-SNAPSHOT.jar
JAVA_JOME = /opt/jdk1.8.0_91/bin/javaecho 'Start Process...'
if [ -f $RESOURCE_NAME ] ; then nohup $JAVA_JOME -Dfile.encoding= UTF-8 -jar $RESOURCE_NAME > /dev/null 2 >&1 & echo Start Success!
else echo Start fail, the file $RESOURCE_NAME is not exist!
fi
/dev/null
是标准错误,有时候屏幕上可以看到,但是重定向的文件中看不到的就是它了 >为重定向符号 >/dev/null
是一个特殊的设备文件,这个文件接收到任何数据都会被丢弃,俗称“黑洞”
1.2 方式二
nohup jar -jar monitors-0.0.1-SNAPSHOT.jar > /dev/null 2 >&1 &
2. 进程关闭脚本
pid = ` ps -ef | grep eask-monitors-0.0.1-SNAPSHOT.jar | grep -v grep | awk '{print $2 }' `
kill -9 $pid
3. 操作mysql
#!/bin/bash
mysqlTest ( ) { mysql -uroot -p123456 << EOF use cloud_test select now(); exit
EOF
}
mysqlTest
4. impala建表语句提取
#!/bin/bash
echo '开始连接'
IMPALA_HOST = "aaa.bbb.ccc.ddd"
IMPALA_PORT = "30065"
IMPALA_USER = "aaa"
DATABASE_NAME = "pdm"
EXPORT_FILE = "impala__create_table_all.txt"
TABLES = ` impala-shell -i ${ IMPALA_HOST} :${ IMPALA_PORT} -u ${ IMPALA_USER} --quiet -B -q "SHOW TABLES IN ${DATABASE_NAME} ;" `
for TABLE in ${TABLES} ; do echo '开始提取表:' ${TABLE} '的建表语句' QUERY = "SHOW CREATE TABLE ${DATABASE_NAME} .${TABLE} ;" TABLE_SQL = ` impala-shell -i ${ IMPALA_HOST} :${ IMPALA_PORT} -u ${ IMPALA_USER} --quiet -B -q "${QUERY} " ` echo $TABLE_SQL ';' >> ${EXPORT_FILE} sleep 4
done
echo "表结构导出完成,文件保存在 ${EXPORT_FILE} "
5. 监控磁盘存量
#!/bin/bash
exist_ = $( df -h | grep $1 | awk '{ gsub( "%" ,"" ,$( NF-1) ) ; print $( NF-1) } ');
IP_=$(ifconfig |grep inet |grep Bcast |awk '{gsub(":"," ",$0 );print $3 }' )
max_ = 0
if (( $exist_>= $max_))
then
curl -X POST xxx -d "{\" aaa\" :\" xxxx\" ,\" orderContent\" :\" 【$IP_ 】存储快满了,现在存储为【$exist_ %】\" }"
fi
6. 清日志脚本
find [ search_path] -mtime +9 -exec command { } \ ; > /dev/null 2 >&1 ;
+9: 这里的 + 表示“大于”,数值 9 指定一个时间间隔,即文件的修改时间距离当前时间应该大于9天
-1:-1 表示查找最后修改时间在 0 到 24 小时(不包括 24 小时)内的文件。1天内
+1:查找最后修改时间超过1天的文件。find /aaaa/bbbb/logs -mtime +0 -exec rm -f { } \ ; > /dev/null 2 >&1 ; ( 最后修改时间至少是一天前,+0特殊)
find /aaaa/bbbb/logs -mtime +1 -exec rm -f { } \ ; > /dev/null 2 >&1 ; ( 最后修改时间至少是一天前)
7. 替换tomcat的启动端口
run sed -i 's|"8080"|"7001"|' server.xml
8. 将一行数据按照空格依次读取
#!/bin/bash
podnames = $( sudo kubectl -n zj-ywxt-ns get pod| grep aaa| awk '{print $1 }' | sort )
for item in $podnames ; do echo "Item: $item "
done