ShellCheck是一個用于bash/sh shell腳本的靜態(tài)分析工具,可以輔助檢查腳本語法錯誤,給出建議增強腳本健壯性。
作者創(chuàng)建了一個在線網(wǎng)站 https://www.shellcheck.net/ ,你可以直接將代碼貼到編輯框中進行在線檢查。
當然你也可以將工具部署到本地計算機使用。
本地部署
聯(lián)網(wǎng)安裝
最簡單的方式是使用包管理器安裝?;旧细鞣N平臺都能直接安裝,比如筆者的archlinux機器:
$sudopacman-Sshellcheck
安裝成功后,測試腳本
$shellchecktest.sh
離線安裝
在Github上直接下載對應平臺預編譯好的可執(zhí)行文件,解壓縮到本地即可使用。
代碼編輯器集成
可以根據(jù)官方說明安裝VIM、VSCODE等編輯器插件直接在編譯器中使用。
使用示例
示例一
$cattest.sh #!/bin/bash cat$0 foriin{1..10} do echo$i done $shellchecktest.sh
shellcheck輸出內容如下:
可以看出,shellcheck使用的關鍵字是info,說明腳本本身沒有語法錯誤,但給出了一些建議使腳本更加健壯。
示例二
再看一個包含警告和錯誤的腳本。
$cattest1.sh #!/bin/bash var1=42 var2=70 echo$(($var1+$var2)) $shellchecktest1.sh
shellcheck輸出內容如下:
首先是warning信息,第3行變量賦值有一個空格,實際上是不對的。
第4行給出error信息,變量與=之間不能有空格,語法錯誤。
第5行意圖是輸出兩個變量的和,但(())內變量不需要使用$符合。
審核編輯:劉清
-
計算機
+關注
關注
19文章
7721瀏覽量
92282 -
Shell
+關注
關注
1文章
373瀏覽量
24909 -
vscode
+關注
關注
1文章
169瀏覽量
8841
原文標題:Shell腳本檢查工具ShellCheck
文章出處:【微信號:ExASIC,微信公眾號:ExASIC】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
shell基本介紹及常用命令之shell基本介紹
harmony-utils之TypeUtil,類型檢查工具類
Shell腳本入門指南

概倫電子先進電路檢查分析平臺工具NanoSpice CCK介紹

【ELF 2學習板試用】命令行功能測試-shell腳本進行IO控制-紅綠燈項目-實現(xiàn)開機起動
【ELF 2學習板試用】命令行功能測試-shell腳本進行IO控制-紅綠燈按鈕項目
【ELF 2學習板試用】命令行功能測試-shell腳本進行IO控制-紅綠燈項目
Linux 服務器檢查以及常用運維 shell 命令

腳本美化高手之輕松實現(xiàn)文本顏色和背景定制的酷炫Shell技巧

評論