|
|
第1行: |
第1行: |
− | =mq_res= | + | =echo= |
| + | ==echo 回车换行== |
| <pre> | | <pre> |
− | #score-addScore-high 队列大于 500 重启phpwork
| + | echo -e '\n' |
− | # php work and mq 机器不在同一台上
| |
− | #有可能的话 另外两个mq 机器也要check 一下
| |
− | [root@mq01 sh]# cat mq_res.sh
| |
− | #!/bin/bash
| |
− | #Author: linuxsa.org
| |
− | docker ps | grep rabbitmqCluster01
| |
− | #if [ $? -eq 0 ]
| |
− | if [ $? -ne 0 ]
| |
− | then
| |
− | echo "No rabbitmq was found ,exit now"
| |
− | exit 1
| |
− | fi
| |
| | | |
− | qu=` docker exec -i rabbitmqCluster01 rabbitmqadmin --username=admin --password=886 list queues | grep score-addScore-high |awk '{print $4}'`
| + | -e:激活转义字符。使用-e选项时,若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出: |
− | #if [ $qu -eq 0 ]
| |
− | if [ $qu -gt 50 ]
| |
− | #if [ $qu -gt 500 ]
| |
− | #if $qu gt 500
| |
− | then
| |
− | echo " qu is 500,and then restart the score-high"
| |
− | echo "*****"
| |
− | function restartmq
| |
− | {
| |
− | salt 'prod-sns-es' cmd.run 'docker ps | grep php-worker'
| |
− | if [ $? -ne 0 ]
| |
− | then
| |
− | echo "No phpworker was found ,exit now"
| |
− | exit 1
| |
− | fi
| |
− |
| |
− | salt 'prod-sns-es' cmd.run 'docker exec -i docker-for-services_php-worker_1 supervisorctl restart production1.rabbitmq.recovery.addScoreHigh:production1.rabbitmq.recovery.addScoreHigh_00'
| |
− | salt 'prod-sns-es' cmd.run 'docker exec -i docker-for-services_php-worker_1 supervisorctl restart production1.rabbitmq.recovery.addScoreHigh:production1.rabbitmq.recovery.addScoreHigh_01'
| |
− | salt 'prod-sns-es' cmd.run 'docker exec -i docker-for-services_php-worker_1 supervisorctl restart production1.rabbitmq.recovery.addScoreHigh:production1.rabbitmq.recovery.addScoreHigh_02'
| |
− | salt 'prod-sns-es' cmd.run 'docker exec -i docker-for-services_php-worker_1 supervisorctl restart production1.rabbitmq.recovery.addScoreHigh:production1.rabbitmq.recovery.addScoreHigh_03'
| |
− | echo "mq has restart "
| |
− | DATE_TIME=`date +"%Y-%m-%d %H:%M.%S"`
| |
− | echo "${DATE_TIME}" >>/data/logs/timlist
| |
− | }
| |
− | restartmq;
| |
− | | |
− | fi
| |
− | | |
− | </pre>
| |
− | | |
− | =基础=
| |
− | <pre>
| |
− | -eq //等于
| |
− | | |
− | -ne //不等于
| |
− | | |
− | -gt //大于 (greater )
| |
− | | |
− | -lt //小于 (less)
| |
− | | |
− | -ge //大于等于
| |
− | | |
− | -le //小于等于
| |
− | | |
− | 命令的逻辑关系:
| |
− | | |
− | 在linux 中 命令执行状态:0 为真,其他为假
| |
− | | |
− | 逻辑与: &&
| |
− | 第一个条件为假时,第二条件不用再判断,最终结果已经有;
| |
− | 第一个条件为真时,第二条件必须得判断;
| |
− | 逻辑或: ||
| |
− | 逻辑非: !
| |
| | | |
| + | ?\a 发出警告声; |
| + | ?\b 删除前一个字符; |
| + | ?\c 最后不加上换行符号; |
| + | ?\f 换行但光标仍旧停留在原来的位置; |
| + | ?\n 换行且光标移至行首; |
| + | ?\r 光标移至行首,但不换行; |
| + | ?\t 插入tab; |
| + | ?\v 与\f相同; |
| + | ?\ 插入\字符; |
| + | ?\nnn 插入nnn(八进制)所代表的ASCII字符; |
| </pre> | | </pre> |
| | | |
| + | [https://www.jianshu.com/p/6f328cfa898d echo命令的换行方法] |
| | | |
| + | [https://blog.csdn.net/xukai871105/article/details/35834703 Linux学习笔记——如何使用echo指令向文件写入内容] |
| [[category:ops]] | | [[category:ops]] |