shell片段

1、远程登入实例并执行命令

ssh $ip << EOF 
  echo "are you ok?"
EOF

2、curl只显示请求返回码

curl -s -o /dev/null -w "%{http_code}\n" <URL>

 3、获取内存使用量,并重启占用高的服务

#!/bin/bash

a=$(free -h |awk 'NR==2 {print $4}'|wc -L)
#获取单位下标
echo $a
let b=$a-1
#获取数值的下标
echo $b
size=$(free -h |awk 'NR==2 {print $4}'|cut -c  $a)
#获取单位
echo $size
free=$(free -h |awk 'NR==2 {print $4}'|cut -c  1-$b)
#获取free的数值
echo $free

if [ $size == M ]
  then
   if [ $free -le 250 ]
      then
        echo "可以重启"
        supervisorctl restart logstash-shipper-live-audio logstash-shipper-live-video-segment logstash-shipper-video logstash-shipperasr logstash-shipperaudio logstash-shipperaudio-segment logstash-shipperimage logstash-shippermedia logstash-shipperrcs logstash-shipperrcs-pre
      else
        echo "大小不满足"
        exit 1
   fi
  else
    echo "单位不满足"
    exit 1
fi

 4、示例端口探活

ports=( 5000 5002 )
for port in ${ports[@]}; do
    i=0
    count=`ssh $ip "netstat -ntlp |grep $port |grep -v "grep" |wc -l"`
    while [ 0 == $count ]; do
        if [ $i -lt 30 ]
        then
            i=`expr $i + 1`
        else
            echo "tcpport $port startup failed"
            exit 1
        fi
        echo "tcpport $port starting..."
        sleep 10
        count=`ssh $ip "netstat -ntlp |grep $port |grep -v "grep" |wc -l"`
    done
    echo "tcpport $port startup completed"
done
echo "tcpport servers startup completed"

 

posted @ 2023-12-01 10:54  ZANAN  阅读(8)  评论(0编辑  收藏  举报