如何使用 ShellCheck 調試 Linux Bash 腳本

如何使用 ShellCheck 調試 Linux Bash 腳本

為 Linux PC 編寫Bash 腳本有問題嗎?與其通過 StackExchange 上的無數線程尋求編程幫助,不如考慮使用 ShellCheck 工具來調試 Linux Bash 腳本並自動查找代碼中的錯誤。

獲取 ShellCheck

ShellCheck 是一個有用的工具,但它不是隨您的 Linux 操作系統一起提供的。相反,如果您想使用它,則必須先安裝它。在本教程中,我們將介紹如何從各種官方軟件源安裝 ShellCheck。此外,我們還將向您展示如何通過通用 Linux 二進製文件使程序運行。

打開終端窗口並更新您的軟件包。然後,按照與您的 Linux 操作系統相對應的說明進行操作。

Ubuntu

ShellCheck 位於官方的 Ubuntu 軟件源中,因此安裝它非常容易。在終端中,使用 Apt 包管理器並使最新版本的 ShellCheck 工作。

sudo apt 安裝 shellcheck

Debian

Debian Stable 有一個舊版本的 ShellCheck 可供用戶安裝。請記住,由於 Debian 的工作方式,這個版本被推遲了。

注意:想要更新版本的 ShellCheck 程序?遵循我們的指南並了解如何在 Debian 上獲得更現代的軟件

sudo apt-get 安裝 shellcheck

拱形Linux

要在 Arch Linux 上獲得 ShellCheck,您首先需要啟用“社區”軟件存儲庫。啟用“社區”需要編輯 Pacman.conf 文件。要編輯文件,請在 Nano 中打開 Pacman.conf。

須藤納米 /etc/pacman.conf

滾動(使用箭頭鍵)並找到文件的“社區”部分。刪除 # 符號的所有實例(大約三行)。然後,按Ctrl + O按鈕保存編輯。

完成對 Pacman.conf 的新編輯後,按Ctrl + X關閉 Nano。然後,重新同步 Pacman 以設置對 Arch Linux“社區”存儲庫的訪問。

須藤吃豆子-Syyuu

最後,使用以下命令將 ShellCheck 安裝到 Arch Linux:

sudo pacman -S shellcheck

軟呢帽

要在 Fedora Linux 上獲取 ShellCheck 腳本分析工具,請打開一個終端並使用 DNF 包管理工具。

須藤 dnf 安裝 ShellCheck

OpenSUSE

在 OpenSUSE 上安裝 ShellCheck 不需要特殊步驟,因為它位於發行版的主要軟件源中。要獲取它,請在終端窗口中輸入以下 Zypper 包命令。

須藤 zypper 安裝 ShellCheck

通用 Linux

想要訪問 ShellCheck 腳本分析工具的鮮為人知的 Linux 發行版用戶必須安裝通用二進製版本。幸運的是,這個二進製版本很容易安裝,不需要修改源代碼。要使其正常工作,請按照以下步驟操作!

第 1 步:  將您要下載的 ShellCheck 版本導出到您的終端環境。

export scversion= " stable "  # 或 "v0.4.7", 或 "latest"

第 2 步:使用wget下載工具,獲取最新的 ShellCheck 二進製版本。

wget " https://storage.googleapis.com/shellcheck/shellcheck- ${scversion} .linux.x86_64.tar.xz "

第 3 步:使用tar 命令提取 ShellCheck TarXZ 存檔 。

tar --xz -xvf shellcheck- " ${scversion} " .linux.x86_64.tar.xz

第 4 步:使用cp命令將 ShellCheck 安裝到您的 Linux PC 。

cp shellcheck- " ${scversion} " /shellcheck /usr/bin/

使用 ShellCheck 調試腳本

ShellCheck 的主要目的是查看腳本(通常是 Bash),檢測誤用的命令並提供更正。對於基本用法,請執行以下操作。

首先,CD到您要檢查的腳本在 Linux PC 上的位置。在本教程中,我們的腳本位於~/shell-scripts 中。你的可能不同。

cd ~/shell 腳本

運行ls命令並查看當前目錄中的所有文件。

注意:如果您打算在具有多種文件類型的目錄中使用 ShellCheck,最好將 grep 和 ls 組合在一起。結合使用這兩個命令可以過濾掉所有非腳本文件。

ls

或者,結合grep僅查看腳本文件。

ls | grep“.sh”
ls | grep“.bash”

ls提示中找到腳本文件的名稱並用鼠標突出顯示文件名。準備好後,通過 ShellCheck 運行它並檢查您的代碼。

如何使用 ShellCheck 調試 Linux Bash 腳本

shellcheck name-of-file.sh

或者

shellcheck name-of-file.bash

如何使用 ShellCheck 調試 Linux Bash 腳本

shellcheck命令運行後,它會立即檢測您的代碼問題並將其放入終端提示符中。通讀並了解如何通過遵循它給您的建議來改進您的編程。

將 ShellCheck 報告保存到文件

在終端中獲取 bash 編程的即時報告非常有用,但是,如果關閉終端,您可能會丟失它。為了避免丟失 shellcheck 報告,我們建議將輸出保存到文本文件中,方法是結合終端中的>>功能運行程序。

shellcheck name-of-file.sh >> ~/Documents/shellcheck-report-name-of-file.sh

或者

shellcheck name-of-file.bash >> ~/Documents/shellcheck-report-name-of-file.bash

通過cat命令在終端中查看您保存的報告。

如何使用 ShellCheck 調試 Linux Bash 腳本

cat ~/Documents/shellcheck-report-name-of-file.sh | 更多的

或者

cat ~/Documents/shellcheck-report-name-of-file.bash | 更多的


使用 Pano 改進 Gnome Shell 剪貼板

使用 Pano 改進 Gnome Shell 剪貼板

讓我們面對現實吧,默認的 Gnome Shell 剪貼板並不是很好。安裝 Pano 來改善您的剪貼板體驗!

如何在Linux上安裝DaVinci Resolve 17

如何在Linux上安裝DaVinci Resolve 17

您的 Linux 機器需要一個出色的非線性視頻編輯器嗎?使用本指南使用 Davinci Resolve 17!

如何使用壁紙下載器將壁紙下載到 Linux 桌面

如何使用壁紙下載器將壁紙下載到 Linux 桌面

Wallpaper Downloader 是一個靈活的 Linux 壁紙下載和管理器。它支持大多數Linux桌面環境,並且非常易於使用。本指南

如何在計算機上安裝 Tuxedo 操作系統

如何在計算機上安裝 Tuxedo 操作系統

想要通過 Tuxedo 計算機測試 Tuxedo 操作系統嗎?了解如何讓最新版本的 Tuxedo OS 在您的 PC 上運行。

如何在 Linux 上安裝 DEB 文件

如何在 Linux 上安裝 DEB 文件

什麼是 .DEB 文件?你用它做什麼?了解在 Linux PC 上安裝 DEB 文件的多種方法。

如何在 Linux 上玩消逝的光芒

如何在 Linux 上玩消逝的光芒

《消逝的光芒》是一款由 Techland 開發、華納兄弟互動娛樂發行的 2015 年生存恐怖視頻遊戲。遊戲的中心是

如何在計算機上安裝 Neptune Linux

如何在計算機上安裝 Neptune Linux

Neptune 使用 KDE Plasma 5 桌面環境,旨在提供優雅的操作系統。以下是如何在計算機上安裝 Neptune Linux。

嘗試 Ubuntu 的新基於 snap 的桌面

嘗試 Ubuntu 的新基於 snap 的桌面

想嘗試 Ubuntu 的新的基於 snap 包的桌面操作系統嗎?通過本指南了解如何將其部署在虛擬機上。

如何在 Linux 上玩《傳說之下》

如何在 Linux 上玩《傳說之下》

Undertale 是一款 2015 年 2D 獨立角色扮演遊戲,由遊戲開發商 Toby Fox 開發和發行。本指南將介紹在您的電腦上下載和安裝 Undertale

如何在 Linux 上玩《全面戰爭:三個王國》

如何在 Linux 上玩《全面戰爭:三個王國》

《全面戰爭:三個王國》是一款由 Creative Assembly 開發的回合製策略 RTS 遊戲。下面是如何在 Linux 上玩遊戲。