GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Faire en sorte que toutes les commandes aient un retour si elles ont fonctionné ou non ?

Parfois, lorsque j'exécute des commandes, il n'affiche pas de sortie, donc je ne sais pas si elles ont fonctionné ou non. Est-il possible de faire en sorte que toutes les commandes aient un retour si elles se sont exécutées correctement ou non ? Ou au strict minimum pour afficher l'identifiant des commentaires qu'ils ont exécutés (correctement ou non)

Réponse acceptée :

(Je pense que puisque vous postez dans Ask Ubuntu nous pouvons supposer que vous parlez du shell par défaut, c'est-à-dire Bash.)

Il y a une très bonne réponse dans la question Stack Overflow Dans un script shell :écho des commandes shell lorsqu'elles sont exécutées (ce n'est pas seulement une solution spécifique à Ubuntu).

Ce que vous devez faire est d'utiliser le set commande pour activer verbose ou xtrace.

set -o

vous donnera une liste des paramètres actuels qui sont commutés sur on ou désactivé .

set -v

ou la version longue :

set -o verbose

deviendra verbeux ON .

Je pense que ce que vous voulez, cependant, est en fait xtrace. Cela fera non seulement écho à chaque commande que vous exécutez, mais élargira également les paramètres et vous donnera plus de commentaires. Donc, si je fais quelque chose d'aussi stupide que de taper 'hi' sur le terminal, j'obtiendrai l'écho de ce que j'ai tapé ainsi qu'un rapport/trace de ce que le shell a fait pour tenter d'exécuter la commande 'hi' (voir capture d'écran ci-dessous ):

Pour activer xtrace :

set -x

ou :

set -o xtrace

Pour désactiver ces paramètres, vous appelez (contre-intuitivement) les mêmes commandes sauf avec un symbole plus + au lieu d'un tiret ou d'un signe moins, par exemple :

set +v

deviendra verbeux OFF , de même :

set +x

va désactiver xtrace OFF .

Un guide détaillé sur les options du shell se trouve dans le Chapitre 33. Options, Guide de script bash avancé .


Ubuntu
  1. Comment répertorier tous les mots clés du shell ?

  2. Les commandes Udev Run ne s'exécutent pas ?

  3. Comment faire en sorte que Alt-w ferme l'onglet actuel, pas la fenêtre actuelle, dans Gnome Shell ?

  4. Le programme d'installation d'Ubuntu 18.04 n'est pas capable de configurer Lvm ?

  5. Pourquoi Bash est-il partout (dans la plupart sinon toutes les distributions Linux) ?

Commande ‘make’ introuvable sur Ubuntu 20.04 Focal Fossa

Comment faire ressembler GNOME Shell à Unity ('Cos Why Not?!)

Façons de répertorier toutes les commandes et alias disponibles sous Linux

Comment exécuter les commandes de fichier .sh tout en une fois sous Linux

Commandes de shell de cluster

Comment faire en sorte que les commandes de Mathematica 8 utilisent tous les cœurs ?