
Shellcheck 是一个静态 Bash 语法检查工具,它可以在多种场景下使用,包括在线使用、命令行检查、编辑器配置。
当你在 Linux / Unix 平台下编写 Bash Shell 编译大量代码的时候,常常会花费大量的时间,然而这时你可以通过 Shellcheck 提前知道你所写脚本的语法问题,同样也会给出你相关纠错提示。

除了在线使用之外,还可以通过命令行进行检查,支持基于 Debian、Arch Linux、EPEL、Fedora、FreeBSD、MacOS、OpenSUSE、Windows 等多个操作系统上进行安装检查;
对于 Shellcheck 命令行的安装方式,可以参考 Shellcheck 的 GitHub 库。
脚本案例:
#!/bin/bash
DIRPATH='/tmp/jstack'
CURRENT_TIME=$(date +'%F'-'%H:%M:%S')
if [ ! -d "$DIRPATH" ];then
mkdir "$DIRPATH"
else
rm -rf "$DIRPATH"/*
fi
cd "$DIRPATH"
while true
do
sleep 3600
# 这里需要将inceptor改后自己的java进程名称
pid=$(ps -ef | grep 'inceptor' | grep -v grep | awk '{print $2}')
jstack $pid >> "jstack_${CURRENT_TIME}"
dir_count=$(ls | wc -l)
if [ "$dir_count" -gt 10 ];then
rm -f $(ls -tr | head -1)
fi
done
Shellcheck 检查输出结果:
$ shellcheck myscript
Line 10:
rm -rf "$DIRPATH"/*
^-- SC2115 (warning): Use "${var:?}" to ensure this never expands to /* .
Line 13:
cd "$DIRPATH"
^-- SC2164 (warning): Use 'cd ... || exit' or 'cd ... || return' in case cd fails.
Did you mean: (apply this, apply all SC2164)
cd "$DIRPATH" || exit
Line 19:
pid=$(ps -ef | grep 'inceptor' | grep -v grep | awk '{print $2}')
^-- SC2009 (info): Consider using pgrep instead of grepping ps output.
Line 20:
jstack $pid >> "jstack_${CURRENT_TIME}"
^-- SC2086 (info): Double quote to prevent globbing and word splitting.
Did you mean: (apply this, apply all SC2086)
jstack "$pid" >> "jstack_${CURRENT_TIME}"
Line 21:
dir_count=$(ls | wc -l)
^-- SC2012 (info): Use find instead of ls to better handle non-alphanumeric filenames.
Line 23:
rm -f $(ls -tr | head -1)
^-- SC2046 (warning): Quote this to prevent word splitting.
^-- SC2012 (info): Use find instead of ls to better handle non-alphanumeric filenames.
$
Shellcheck 在线使用地址:
https://www.shellcheck.net/#
Shellcheck GitHub 地址:
https://github.com/koalaman/shellcheck
数据统计
数据评估
关于(ShellCheck – shell script analysis tool)特别声明
本站商娱网提供的ShellCheck – shell script analysis tool都来源于网络,不保证外部链接的准确性和完整性,同时,对于该外部链接的指向,不由商娱网实际控制,在2022-01-07 13:58收录和巡查时,该网页上的内容,都属于合规合法,后期网页的内容如出现违规,可以直接联系网站管理员进行删除,商娱网不承担任何责任。
相关导航

virustotal 分析可疑文件、域、IP 和 URL 以检测恶意软件和其他违规行为,并自动与安全社区共享。

SaveFrom.net
SaveFrom.net提供最简单、最快速的免费在线视频下载服务。立即使用我们的工具,轻松下载您最喜爱的在线视频。支持多个视频网站,无需安装任何软件。开始免费下载!

艺术字网
艺术字网 - 艺术签名在线生成,一笔签名设计在线,艺术字体在...

识字体网
识字体网是免费在线字体识别、品牌识别、字体下载、字体搜索和问答社区网站,免费下载Windows、macOS、Linux、Android、iOS/iPad/iPhone字体识别扫一扫软件。无人值守的自动识别和自动/手动拼字,结合人工智能、大数据和搜索技术,可快速识别中文、英文、日文、韩文等全球文字,帮您购买与使用合规字体避免字体侵权风险。

Upscay
Upscay 免费开源AI图像升频器,采用Linux优先理念构建。

Fotor懒设计
Fotor懒设计是全球最受欢迎的在线图片制作神器、平面设计工具和在线平面设计软件之一,提供海量海报,PPT,邀请函,banner,名片,logo等免费设计素材和模板,可在线一键稿定设计印刷,并能在线图片编辑、照片编辑。

混合白噪音 A Soft Murmur
混合白噪音 A Soft Murmur 将环境声音混合在一起以消除干扰并帮助您集中注意力或放松

doubledouble
doubledouble 直接从 Spotify、Apple Music、Amazon Music、Soundcloud、Qobuz、Deezer、Tidal 或 Napster 免费下载音乐。
暂无评论...