Shell脚本神器(ShellCheck)

ShellCheck作用:

在编写Shell脚本时,经常会遇到语法错误执行逻辑低效,代码风格不规范的问题。但这款shellcheck工具就可以很好的解决这些问题,找到脚本中潜在的问题和错误并提供最佳实践的建议,使Shell脚本更加清晰可读性更高。

Shellcheck这个工具默认没有安装所以需要我们先安装一下,它的软件包是存放在epel源中的所以还要用公网仓库下载epel源进行安装

1.使用yum方式安装:

(1)安装下载epel源

root@shell \~# yum -y install epel-release.noarch

(2)安装shellcheck

root@shell \~# yum -y install ShellCheck

2.使用ShellCheck对之前写的脚本进行分析

(1)写一个简单的脚本进行测试

root@shell \~# vim status.sh

复制代码
#!/bin/bash
#这是一个监控nginx状态简单脚本
case $1 in
status)
systemctl status nginx >>/dev/null
if [ $? -eq  0 ];then
echo "1"
else
echo "0"
fi   
;;
pv)
curl=`curl -s 127.1.1.1/status |awk NR==3'{print $1}'`
$curl
;;
lianjie)
curl -s 127.1.1.1/status |awk NR==1'{print $3}'
;;
Esac		#故意将'esac'大写
(2)将刚写好的脚本进行分析

root@shell \~# shellcheck status.sh

执行完成后输出分析结果,会反馈出一些建议和问题。我们刚刚写的测试脚本还是简单一些的所以它给出的建议也不是很多,如果你的脚本要是有上百行的话那么它给出的建议会多一些,总体来说,shellcheck是一个比较强大的工具,可以帮助我们提高编写shell脚本的质量可读性和安全性。在编写shell脚本中可以说是非常有用的一个工具也可以称之问shell监本编写神器。

相关推荐
为思念酝酿的痛8 小时前
POSIX信号量
linux·运维·服务器·后端
专业白嫖怪8 小时前
什么是docker
运维·docker·容器
隔窗听雨眠9 小时前
Nginx网关响应慢排查手记
java·服务器·nginx
人还是要有梦想的9 小时前
linux下用搜狗输入法,中英文切换
linux·运维·服务器
北京智和信通9 小时前
某部队IT基础设施及机房动环统一运维建设实例
运维·网管平台·网管软件·网络管理系统·网络运维平台·网络运维系统
乐维_lwops9 小时前
从 “救火运维” 到 “自动驾驶”:运维智能体到底解决了什么?
运维·人工智能·运维智能体
bush49 小时前
嵌入式linux学习记录二
linux·运维·学习
9分钟带帽9 小时前
linux_通过NFS挂载远程服务器的硬盘
linux·服务器
weixin_4684668510 小时前
MoneyPrinterTurbo 短视频自动化生产实战指南
运维·人工智能·自动化·大模型·音视频·moneyprinter
難釋懷10 小时前
Nginx自签名-图形化工具 XCA
运维·nginx