聊聊如何查看shell脚本。

您可以使用以下命令查看shell脚本: ,,“bash,cat /path/to/your/script.sh,

使用 Shell 脚本查看多个服务器的端口是否打开

在运维工作中,我们经常需要检查服务器的端口是否开放,我们需要检查多个服务器的端口,这时候就需要编写一个 Shell 脚本来实现这个功能,本文将介绍如何使用 Shell 脚本来查看多个服务器的端口是否打开。

聊聊如何查看shell脚本。

1. 准备工作

我们需要获取所有需要检查的服务器的 IP 地址或者主机名,这些信息可以存储在一个文本文件中,每行一个 IP 地址或者主机名。

192、168.1.1
192、168.1.2
192、168.1.3

接下来,我们需要确定要检查的端口范围,通常情况下,我们会检查常见的服务端口,如 80、443、8080 等,在本例中,我们将检查这些端口。

2. 编写 Shell 脚本

根据上述准备工作,我们可以编写如下 Shell 脚本:

聊聊如何查看shell脚本。

!/bin/bash
定义服务器列表文件和端口范围
SERVER_FILE="servers.txt"
PORT_RANGE="80-443"
遍历服务器列表文件中的每一行
while read server; do
   使用 for 循环遍历端口范围
  for port in $(seq $PORT_RANGE); do
     使用 nc 命令检查端口是否开放
    nc -z -w 5 $server $port > /dev/null 2>&1
    
     根据 nc 命令的返回值判断端口是否开放
    if [ $? -eq 0 ]; then
      echo "服务器 $server 的 $port 端口是开放的"
    else
      echo "服务器 $server 的 $port 端口是关闭的"
    fi
  done
done < $SERVER_FILE

将以上脚本保存为 check_ports.sh,并给予执行权限:

chmod +x check_ports.sh

3. 运行脚本

运行脚本,查看多个服务器的端口是否开放:

./check_ports.sh

脚本将会输出每个服务器在指定端口范围内的端口状态,如果需要查看详细的错误信息,可以将脚本中的 > /dev/null 这一行删除,这样,当端口关闭时,nc 命令会输出详细的错误信息。

for port in $(seq $PORT_RANGE); do
   ...(省略其他代码)
  if [ $? -ne 0 ]; then  注意这里应该是 $? != 0 而不是 $? == 0
    nc_error=$(nc_error)  这里假设存在一个变量用于存储错误信息,实际应用中可能需要修改这部分代码以获取详细错误信息
    echo "服务器 $server 的 $port 端口是关闭的,错误信息:$nc_error"
  else
     echo "服务器 $server 的 $port 端口是开放的"
  endif
done < $SERVER_FILE

4. 其他问题与解答

聊聊如何查看shell脚本。

A1. 如何获取所有可用的 IP 或者主机名?

答:可以使用 nmap 或者 ping 命令来获取所有可用的 IP 或者主机名,使用 nmap 可以扫描整个网络并显示在线主机的信息:

nmap --all-hosts | grep "Up" | cut -d' ' -f2 | sort | uniq > available_ips.txt

本文来自投稿,不代表重蔚自留地立场,如若转载,请注明出处https://www.cwhello.com/473385.html

如有侵犯您的合法权益请发邮件951076433@qq.com联系删除

(0)
硬件大师硬件大师订阅用户
上一篇 2024年7月18日 13:29
下一篇 2024年7月18日 13:39

相关推荐

  • 小编教你cmd端口占用查询 只能强制。

    cmd端口占用是指在计算机网络中,命令提示符(Command Prompt)使用的默认端口(通常是80或443)被其他程序占用的情况,这种情况可能会导致用户无法正常使用命令提示符,需要寻找并解决端口占用的问题,本文将介绍cmd端…

    2024年6月16日
    01
  • 聊聊怎么利用Shell脚本让网站更具可读性。

    您可以使用Shell脚本来提高网站的可读性。您可以测算网站的文本和背景之间的对比度,以确保站点易于阅读。如果希望人们发现您的网站实用,那么他们需要能够阅读它。为文本选择的颜色可能会影响网站的可读性。 什么…

    2024年7月4日
    04
  • 我来说说华硕z370i主板详解图。

    华硕Z370I主板是一款针对英特尔第八代和第九代处理器的微型ATX主板,它支持Intel的Coffee Lake平台,以下是对这款主板的详细解析: 设计与布局 华硕Z370I主板采用了黑色的PCB板,上面散布着各种电子元件,整体布局…

    2024年6月14日
    05
  • 关于端口号,具体的你知道多少?

    端口号: TCP和UDP采用16bit的端口号来识别应用程序。那么这些端口号是如何选择的呢? 服务器一般都是通过知名端口号来识别的。例如,对于每个TCP/IP实现来说,FTP服务器的TCP端口号都是21,每个telnet服务器的TCP…

    2016年6月15日
    0268
  • 今日分享Openstack中Murano网络排错的示例分析。

    OpenStack是一个开源的云计算平台,它提供了一套完整的云计算解决方案,包括计算、存储、网络等,Murano是OpenStack的一个子项目,它是一个基于Python的插件系统,用于创建和管理虚拟机实例,在OpenStack中,网络是…

    2024年6月14日
    02
  • 分享如何用bash编程实现逻辑操作符和shell扩展符。

    使用bash编程实现逻辑操作符(如&&、||)和shell扩展符(如${var})。 逻辑操作符 Bash 编程中有很多逻辑操作符,它们可以用来组合多个条件判断,以下是一些常用的逻辑操作符: 1、与 (&&):当且仅当…

    2024年7月17日
    03
  • 小编教你linux如何ping端口。

    在Linux系统中,我们可以使用ping命令来测试IP地址和端口是否通,Ping命令用于发送ICMP回显请求数据包到目标主机,以检测网络连接是否正常,而端口测试则需要使用telnet或nc(netcat)等工具,下面分别介绍如何使用pi…

    2024年6月20日
    03
  • 小编教你ssh端口。

    SSH端口,全称为安全外壳协议(Secure Shell),是一种用于远程登录和执行命令的网络协议,它可以在不安全的网络环境中提供加密的数据通道,从而保护数据传输的安全,SSH协议最初是由芬兰计算机科学家Thomson于1992年…

    2024年6月16日
    04

联系我们

QQ:951076433

在线咨询:点击这里给我发消息邮件:951076433@qq.com工作时间:周一至周五,9:30-18:30,节假日休息