GNU/Linux >> Tutoriels Linux >  >> Linux

Qu'est-ce que Echo $ ? Faire??

Cette question a déjà des réponses ici :Comment rechercher les codes de sortie des candidatures ?

(2 réponses)
Fermé il y a 2 ans.

Dans mon terminal, il a imprimé un nombre apparemment aléatoire 127 . Je pense qu'il imprime la valeur d'une variable et pour vérifier mes soupçons, j'ai défini une nouvelle variable v=4 . Exécution de echo $? m'a encore donné en sortie.

Je suis confus car je m'attendais à ce que 4 soit la réponse.

Réponse acceptée :

De man bash :

$ ? S'étend jusqu'au statut de sortie du pipeline de premier plan le plus récemment exécuté.

echo $? renverra l'état de sortie de la dernière commande. Vous avez 127 c'est le statut de sortie de la dernière commande exécutée avec une erreur (très probablement). Les commandes en cas de réussite se terminent avec un état de sortie de (le plus probable). La dernière commande a donné la sortie depuis le echo $v sur la ligne précédente terminée sans erreur.

Si vous exécutez les commandes

v=4
echo $v
echo $?

Vous obtiendrez une sortie sous la forme :

4 (from echo $v)
0 (from echo $?)

Essayez également :

true
echo $?

Vous obtiendrez .

false
echo $?

Vous obtiendrez 1 .

Le true la commande ne fait rien, elle se termine simplement avec un code d'état ; et le false la commande ne fait rien non plus, elle se termine simplement avec un code d'état indiquant un échec (c'est-à-dire avec le code d'état 1 ).


Linux
  1. Que fait "lc_all=c" ?

  2. Que fait Bamfdaemon ?

  3. Que fait poll() avec un timeout de 0 ?

  4. Origine d'un thread kworker

  5. Que fait ulimit -s unlimited ?

Que fait réellement Libgl_always_indirect=1 ?

Qu'est-ce que . Commande ~/.bashrc Faire ? ?

Que retourne malloc(0) ?

Que signifie 'cd -' ?

Que fait 'bash -c' ?

Que fait % dans les chaînes du shell Linux ?