手机版 收藏 导航

如何利用命令行工具批量查看网站的HTTP状态码

原创   www.link114.cn   2023-09-24 09:18:14

如何利用命令行工具批量查看网站的HTTP状态码

Curl是一款功能强大的命令行工具,它支持多种网络协议,可以用于各种网络操作,包括查看HTTP状态码。下面是使用Curl查看单个网站的HTTP状态码的命令:

curl -I https://www.example.com

其中,-I参数可以用来只显示响应头信息,不输出响应体内容。运行这个命令后,你就可以在输出中看到网站的HTTP状态码,比如200代表网站正常访问,404代表网页未找到等。

要批量查看多个网站的HTTP状态码,可以将网站URL保存在一个文本文件中,使用循环语句逐个访问并输出结果。下面是一个简单的Bash脚本示例:

#!/bin/bash

# 网站列表文件
sites_file="sites.txt"

# 逐个访问网站并输出状态码
while read site; do
  status_code=$(curl -I -s -o /dev/null -w "%{http_code}" "$site")
  echo "$site: $status_code"
done < "$sites_file"

在这个脚本中,我们首先定义一个存放网站列表的文件"sites.txt"。使用while循环逐行读取该文件中的网站URL,并使用curl命令获取HTTP状态码。将网站URL和状态码输出到控制台。

除Curl,还有另一个常用的命令行工具HTTPie,它提供更加友好的语法和输出格式。使用HTTPie查看单个网站的HTTP状态码的命令如下:

http HEAD https://www.example.com

同样,要批量查看多个网站,可以编写一个脚本来实现。下面是一个使用HTTPie的示例脚本:

#!/bin/bash

# 网站列表文件
sites_file="sites.txt"

# 逐个访问网站并输出状态码
while read site; do
  status_code=$(http --check-status --follow --ignore-stdin HEAD "$site" | grep "status")
  echo "$site: $status_code"
done < "$sites_file"

这个脚本的逻辑与前面的Curl脚本类似,不同之处在于使用HTTPie命令。HTTPie提供更加简洁的语法,还支持自动跟随重定向,并在输出中直接显示状态码。

除Curl和HTTPie,还有一些其他的命令行工具也可以用于批量查看网站的HTTP状态码,比如Wget、Postman和WinSCP等。每种工具都有自己的特点和适用场景,使用时可以根据自己的需求和习惯进行选择。

利用命令行工具批量查看网站的HTTP状态码是一种非常高效和方便的方法。通过编写一些简单的脚本,我们可以快速获取大量网站的运行情况,为网站维护和优化提供有价值的信息。