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监本编写神器。

相关推荐
Decay__2 小时前
12_MySQL InnoDB 内存与锁调优 —— Buffer Pool、redo log、隔离级别与锁等待
运维·数据库·sql·mysql·架构
java_logo4 小时前
Docker 部署 Dify:轻松搭建 LLM 应用开发平台
运维·docker·容器
方便面不加香菜5 小时前
Docker Container -- 综合实战案例详解
运维·docker·容器
LongRunning6 小时前
【Linux】RK3568-OpenCV+YOLO(八)
linux·opencv·yolo
海洋之恒6 小时前
GitHub Actions 自动化:5 个真实运维提效案例
运维·自动化·github
迪康coolmu8 小时前
出差终端数据安全落地实战:基于迪康端点安全一体化管理系统的四道防线实践
运维·服务器·经验分享·笔记·其他·安全·php
民乐团扒谱机9 小时前
【微实验】NSGA-II(非支配排序遗传算法)——解决多目标优化问题的“自然选择模拟器”
linux·人工智能·算法
물の韜10 小时前
ZYNQ/FMQL系列Linux之I2C开发实战
linux·arm开发·嵌入式硬件·设备树·iic·zynq
qq_3718021110 小时前
Ubuntu Linux中安装WorkBuddy
linux·运维·服务器·ubuntu