-e指定逃脱字符,遇到这个字符相当于按ctrl+c.
echo q | telnet -eq 10.0.0.61 80
Telnet escape character is 'q'.
Trying 10.0.0.61...
telnet: connect to address 10.0.0.61: Connection refused
echo $?
-z 无io模式,用于检查端口是否连通。
nc -z 10.0.0.61 22
echo $?
nc -z 10.0.0.61 80
echo $?
三、进程检查
ps,top命令
四、网络检查
iftop
更多的看下之前讲解的网络部分(命令)
-c 2 次数,ping几次
-W timeout 超时时间,等待响应的超时时间
五、web与api测试命令
curl/wget
curl: -v -L跟随跳转 -H 修改请求头 -I 只显示响应头 -w 按照指定格式输出 -o 输出指定到文件或空. -s一般使用管道需要加上
(1)wget
-t 失败后,重复尝试次数、
-T timeout 超时时间
-q 不显示wget输出
–spider 不下载文件,仅访问
wget -t 3 -T 1 -q --spider www.baidu.com
[root@oldboy-devops-shell ~]# echo $?
(2)curl
#01 curl 获取状态码
#-s slient 安静模式 如果不使用默认输出下载进度
#-o curl的输出到指定位置的文件
#-w 按照指定格式与内容输出 %{http_code}状态码 更多格式
man curl 搜索 variable
[root@m01-shell ~]# curl -s -w '%{http_code}\n' -o /dev/null www.baidu.com
#02 curl 获取响应头
[root@m01-shell ~]# curl -I www.baidu.com
HTTP/1.1 200 OK
Accept-Ranges: bytes
Cache-Control: private, no-cache, no-store, proxyrevalidate, no-transform
Connection: keep-alive
Content-Length: 277
Content-Type: text/html
Date: Wed, 29 Dec 2021 01:58:35 GMT
Etag: "575e1f59-115"
Last-Modified: Mon, 13 Jun 2016 02:50:01 GMT
Pragma: no-cache
Server: bfe/1.0.8.18
##POST
####输入用户名密码(ak id和secret) 获得令牌 token
####通过令牌访问资源
# -X 请求方法
# -H 修改请求头
# -d 请求报文主体
curl -s -X POST -H Content-Type:application/json-rpc
10.0.0.71/api_jsonrpc.php -d '{
"jsonrpc": "2.0",
"method": "user.login",
"params": {
"user": "Admin",
"password": "zabbix"
"id": 1,
"auth": null
六、全能信息
yum install atop -y
systemctl enable atop
systemctl start atop
案例1:检查指定的地址的端口是否可以访问
地址:域名、ip
端口:端口
sh check_access.sh 10.0.0.61 22
可以访问或不能访问
分析:使用什么命令,如何实现(步骤)
命令:nc/nmap/telnet
输入地址 端口
使用命令访问地址的端口
判断结果(返回值判断,过滤+wc)
telnet
echo q | telnet -e q 10.0.0.61 23
echo $?
补充 if nc 也可直接用命令
#-w 超时时间
#-z非交互模式
if nc -w 1 -z $dst $port ;then
action "地址:$dst 端口:$port is ok" /bin/true
action "地址:$dst 端口:$port is failed" /bin/false
案例2:检查指定url是否可以访问
sh check_url.sh url
屏幕输出:
可以访问地址或不能访问地址
命令:wget/curl
1.用户输入url/ip
2.wget执行
3.判断返回值
wget方法
wget -q --spider www.baiduavavavavavaavvvvvvv.com
-q不输出额外内容
--spider不下载文件,仅仅访问测试.
echo $?