当前位置:首页 > CN2资讯 > 正文内容

windows服务器 端口 监控工具

20小时前CN2资讯

 

 

从未写过脚本我的最近接了俩脚本的需求,就在这分享一下我的我学到基础知识主要就四部分内容

 

 

一、变量

变量的定义

string='字符串' string="字符串" num=808 string=str

  字符串可以用单引号和双引号包裹,也可不包裹。数字话不用引号包裹的话就是一个数值。

 变量也可以用来接受语句给变量赋值

file=`ls -l filepath/txt.txt`

上面的语句是接收filepath 下的txt.txt文档

数组的定义

程序中常用的还有数组在 Shell 中,用括号( )来表示数组,数组元素之间用空格来分隔。由此,定义数组的一般形式为:

arrayName=(ele1 ele2 ele3 ... elen) #定义方法 my_array=(A B "C" D)

数组的赋值方法有两种

一种是,对下标进行赋值、一种是对指定的元素赋值区别如下

#下标赋值 arrayName[0]=value0 arrayName[1]=value1 arrayName[2]=value2 #特定元素赋值 ages=([3]=24 [5]=19 [10]=12)

注意:变量声明赋值时=与值之间不允许有空格

二、变量的使用

变量使用

使用一个定义过的变量,只要在变量名前面加美元符号$即可,如:

author="严长生" echo $author echo ${author}

 

变量名外面的花括号{ }是可选的,加不加都行,加花括号是为了帮助解释器识别变量的边界。我个人建议是所有变量的使用是都加的{}

数组的使用

①数组的获取

myArray=(A B "C" D) echo "第一个元素为: ${myArray[0]}" echo "第二个元素为: ${myArray[1]}"

执行结果如上

②获取数组中所有元素和长度

myArray=(a b c d) echo "数组元素个数为: ${#myArray[*]}" echo "数组元素个数为: ${#myArray[@]}" echo "数组的元素为: ${my_array[*]}" echo "数组的元素为: ${my_array[@]}"

 

③ 数组的遍历

1、for循环

1 for(( i=0;i<${#array[@]};i++)) do 2 #${#array[@]}获取数组长度用于循环 3 echo ${array[i]}; 4 done;

2、for … in

#遍历(带数组下标): for i in "${!arr[@]}"; do printf "%s\t%s\n" "$i" "${arr[$i]}" done #遍历(不带数组下标): for element in ${array[@]} #也可以写成for element in ${array[*]} do echo $element done

 

3、While循环法

1 i=0 2 while [ $i -lt ${#array[@]} ] 3 #当变量(下标)小于数组长度时进入循环体 4 do 5 echo ${ array[$i] } 6 #按下标打印数组元素 7 let i++ 8 done

 四、命令执行

  到这里你还记得我们的最初是想干啥的吗?监控长连接端口状态。

 查看端口状态的命令  【更多解释查看菜鸟教程】

1 netstat [-acCeFghilMnNoprstuvVwx][-A<网络类型>][--ip]

 

知道如何获取端口状态我们就要用shell 来实现了。

命令用 `来包裹就是键盘上tab键上面那个键。我们来试试看

这样我们就能拿到想要的端口信息了。

四、条件判断

条件测试的表达式:
    [ expression ]  括号两端必须要有空格
    [[ expression ]] 括号两端必须要有空格
 
组合测试条件:
-a: and
-o: or

判断比较一般在if中使用,if的使用如下

1 if 判断条件;then 2 #执行内容 3 fi

我们可以判断大约有以下几几类

1、整数比较:
-eq 判断两个整数是否相等
-ne 判断两个整数是否不等
-gt 判断一个数是否大于另一个数
-lt 判断一个数是否小于另一个数
-ge 大于或等于
-le 小于或等于

 

2、字符串比较
== 等于  两边要有空格
!= 不等
>  大于
<  小于

 

3、文件判断
-z      string 判断指定字符是否为空,空着真,非空为假
-n   string 判断指定字符串是否为不空,空为假 非空为真
-e   file 判断文件是否存在
-f       file 判断文件是否为普通文件
-d   file 判断指定路径是否为目录
-r    file 判断文件对当前用户是否可读
-w   file 判断文件对当前用户是否可写
-x   file 判断文件对当前用户是都可执行
-z    是否为空  为空则为真
-a    是否不空

五、最后的实现代码

我的实现思路如下

1、遍历获取所有要查询的端口号(我们的端口号在配置文件中)

2、在遍历中遍历查询配置文件中的端口状态为EASTBLISHEN是否存在

3、如果不存在的就说明这个端口异常,我这样判断原因因为可能起这个端口的服务挂了,我们查不到任何状态更别说判断了。我们只能取正常的了。

4、判断异常发送告警给运维

5、我并没对把所有的结果汇总到一起进行发送,因为端口和配置文件有点多,等结果会很慢而且可能把我自己查死了。所以变异异常直接就发了

 

代码明天我会贴出来。有问题欢迎评论区指正


参考:http://www.runoob.com/linux/linux-comm-netstat.html

 



    你可能想看:

    扫描二维码推送至手机访问。

    版权声明:本文由皇冠云发布,如需转载请注明出处。

    本文链接:https://www.idchg.com/info/32727.html

    分享给朋友:

    “windows服务器 端口 监控工具” 的相关文章

    解决 ChatGPT Access Denied 问题的全面指南

    在使用ChatGPT时,遇到“Access Denied”问题并不罕见。这个问题的出现往往让人感到沮丧,因为我们希望随时随地都能使用这个强大的工具。不过,了解一些常见原因可以帮助我们更快找到解决方案。 地区限制可能是导致“Access Denied”问题的一个主要因素。我常常听说在一些特定的地区,用...

    AS4134是什么线路:深入解析中国电信的核心骨干网

    AS4134线路,大家也可以叫它163网络,这是中国电信的核心骨干网之一。聊到AS4134,首先让人想到的就是它在国内出海带宽上占据的重要地位。能够承载90%的电信业务负载,真的是一个不可小觑的网络。这条线路不仅是中国电信的主要骨干网,还成为了很多海外用户访问国内互联网资源的高性价比选择。我在租用香...

    深入探讨4C与1C:市场营销与电池性能优化的关键

    4C与1C概述 在探讨市场和技术发展的过程中,4C与1C是两个值得注意的概念。虽然它们的名称很相似,但是一个关注的是市场营销的策略,另一个则关乎电池的充放电性能。我常常思考这两个概念的融合点,以及它们对我们生活的深远影响。 1.1 4C理论介绍 4C理论是市场营销中一个重要的框架,帮助企业更好地理解...

    如何有效进行Payoneer绑定PayPal的详细步骤指南

    在目前的数字支付环境中,Payoneer和PayPal是两个广受欢迎的支付平台。首先,Payoneer(派安盈)是一个全球化的支付解决方案,专为跨境电商卖家、独立站卖家及B2B外贸商家设计。它支持多种货币的收付款服务,覆盖190个国家,包含了70种币种。这意味着无论在哪个地方进行交易,Payonee...

    如何成功申请大陆白名单地址:完整流程与重要性解析

    在讨论大陆白名单地址之前,首先要了解这个词汇的具体含义。大陆白名单地址,简单来说,是指在特定的法律法规框架下,被认定为合规和安全的互联网地址。这些地址通常被授权在中国大陆的网络环境中进行特定的活动,比如信息传输、电子商务等。然后,实际使用中的这个概念不仅限于单纯的互联网地址,它还有更深层次的法律和经...

    2023年VPS推荐:选对虚拟专用服务器提升业务性能与安全性

    什么是 VPS 当我第一次接触VPS(Virtual Private Server),确实是感到有些陌生。简单来说,VPS是一种虚拟专用服务器,它将一台物理服务器划分成多个独立运行的虚拟服务器。每个虚拟服务器都可以独立运行操作系统和应用程序。这样的设计让我想起了把一间很大的公寓分成了多个独立的套房。...