Avez-vous des problèmes avec un script Bash que vous avez écrit pour votre PC Linux? Au lieu de parcourir d’innombrables threads sur StackExchange pour obtenir de l’aide à la programmation, envisagez d’utiliser l’outil ShellCheck pour déboguer les scripts Linux Bash et trouver automatiquement les erreurs dans votre code.
Table des matières
Obtenez ShellCheck
ShellCheck est un outil utile, mais il n’est pas livré avec votre système d’exploitation Linux prêt à l’emploi. Au lieu de cela, si vous souhaitez l’utiliser, vous devrez d’abord l’installer. Dans ce didacticiel, nous expliquerons comment installer ShellCheck à partir de diverses sources logicielles officielles. De plus, nous vous montrerons également comment faire fonctionner le programme via le binaire générique Linux.
Ouvrez une fenêtre de terminal et mettez à jour vos packages. Ensuite, suivez les instructions qui correspondent à votre système d’exploitation Linux.
Ubuntu
ShellCheck est dans les sources officielles du logiciel Ubuntu, donc son installation est assez facile. Dans un terminal, utilisez le gestionnaire de packages Apt et faites fonctionner la dernière version de ShellCheck.
sudo apt install shellcheck
Debian
Debian Stable a une ancienne version de ShellCheck prête à être installée par les utilisateurs. Gardez à l’esprit que cette version est retardée en raison de la façon dont Debian fait les choses.
Remarque: vous souhaitez une version plus récente du programme ShellCheck? Suivez notre guide et découvrez comment obtenir des logiciels plus modernes sur Debian.
sudo apt-get install shellcheck
Arch Linux
Pour obtenir ShellCheck sur Arch Linux, vous devez d’abord activer le référentiel de logiciels «Communauté». L’activation de «Communauté» nécessite la modification du fichier Pacman.conf. Pour modifier le fichier, ouvrez Pacman.conf dans Nano.
sudo nano /etc/pacman.conf
Faites défiler (avec les touches fléchées) et recherchez la section «Communauté» du fichier. Supprimez toutes les instances du symbole # (environ trois lignes). Ensuite, enregistrez les modifications en appuyant sur le bouton Ctrl + O.
Une fois les nouvelles modifications apportées à Pacman.conf prises en charge, appuyez sur Ctrl + X pour fermer Nano. Ensuite, resynchronisez Pacman pour configurer l’accès au référentiel Arch Linux «Community».
sudo pacman -Syyuu
Enfin, installez ShellCheck sur Arch Linux avec:
sudo pacman -S shellcheck
Feutre
Pour obtenir l’outil d’analyse de script ShellCheck sur Fedora Linux, ouvrez un terminal et utilisez l’outil de gestion de paquet DNF.
sudo dnf install ShellCheck
OpenSUSE
L’installation de ShellCheck sur OpenSUSE ne nécessite aucune étape particulière, comme c’est le cas dans les principales sources logicielles de la distribution. Pour l’obtenir, entrez la commande suivante du package Zypper dans une fenêtre de terminal.
sudo zypper install ShellCheck
Linux générique
Les utilisateurs de distributions Linux moins connues qui souhaitent accéder à l’outil d’analyse de script ShellCheck doivent installer la version binaire universelle. Heureusement, cette version binaire est facile à installer et ne nécessite aucun bricolage avec le code source. Pour le faire fonctionner, suivez les étapes ci-dessous!
Étape 1: exportez la version de ShellCheck que vous êtes sur le point de télécharger dans votre environnement de terminal.
export scversion="stable" # or "v0.4.7", or "latest"
Étape 2: à l’aide de l’outil de téléchargement wget, récupérez la dernière version binaire ShellCheck.
wget "https://storage.googleapis.com/shellcheck/shellcheck-${scversion}.linux.x86_64.tar.xz"
Étape 3: extrayez l’archive ShellCheck TarXZ avec la commande tar.
tar --xz -xvf shellcheck-"${scversion}".linux.x86_64.tar.xz
Étape 4: installez ShellCheck sur votre PC Linux avec la commande cp.
cp shellcheck-"${scversion}"/shellcheck /usr/bin/
Déboguer des scripts avec ShellCheck
Le but principal de ShellCheck est d’examiner un script (généralement Bash), de détecter les commandes mal utilisées et de proposer des corrections. Pour une utilisation de base, procédez comme suit.
Tout d’abord, le CD sur lequel le script que vous souhaitez vérifier se trouve sur votre PC Linux. Dans ce tutoriel, notre script se trouve dans ~ / shell-scripts. Le vôtre peut différer.
cd ~/shell-scripts
Exécutez la commande ls et affichez tous les fichiers du répertoire en cours.
Remarque: si vous avez l’intention d’utiliser ShellCheck dans un répertoire avec plusieurs types de fichiers, c’est une bonne idée de combiner grep et ls ensemble. L’utilisation conjointe de ces deux commandes vous permet de filtrer tous les fichiers non script.
ls
Ou, combinez avec grep pour afficher uniquement les fichiers de script.
ls | grep ".sh" ls | grep ".bash"
Recherchez le nom d’un fichier de script dans l’invite ls et mettez le nom du fichier en surbrillance avec la souris. Lorsque vous êtes prêt, exécutez-le via ShellCheck et vérifiez votre code.
shellcheck name-of-file.sh
ou
shellcheck name-of-file.bash
Immédiatement après l’exécution de la commande shellcheck, elle détectera les problèmes avec votre code et le placera dans l’invite du terminal. Lisez et apprenez comment améliorer votre programmation en suivant les suggestions qu’elle vous donne.
Enregistrer le rapport ShellCheck dans un fichier
Obtenir un rapport instantané dans le terminal pour votre programmation bash est très utile cependant, vous risquez de le perdre si vous fermez le terminal. Pour éviter de perdre votre rapport Shellcheck, nous vous recommandons d’enregistrer la sortie dans un fichier texte, en exécutant le programme en combinaison avec la fonction >> dans le terminal.
shellcheck name-of-file.sh >> ~/Documents/shellcheck-report-name-of-file.sh
ou
shellcheck name-of-file.bash >> ~/Documents/shellcheck-report-name-of-file.bash
Affichez votre rapport enregistré dans le terminal via la commande cat.
cat ~/Documents/shellcheck-report-name-of-file.sh | more
ou
cat ~/Documents/shellcheck-report-name-of-file.bash | more