Jai un exercice pour mettre dans un fichier des données (* conf de certains répertoires) et je dois le faire en arrière-plan. Je lai fait et je me demande quelle est la signification des messages de sortie:
[A@localhost tests]$ ls -ld /etc/*conf /usr/*conf > test1_6_conf.txt 2>&1 &
Entrez monte cette ligne:
[1] 2533
quest-ce que cela signifie? Après une autre entrée, un autre message apparaît.
[A@localhost tests]$ [1]+ Exit 2 ls --color=auto -ld /etc/*conf /usr/*conf > test1_6_conf.txt 2>&1
Quest-ce que cela signifie? Quest-ce que « Exit 2 »?
Entrez les résultats dune vérification – tout semble correct.
[A@localhost tests]$ [A@localhost tests]$ ls -l test1_6_conf.txt -rw-rw-r--. 1 A A 2641 Nov 22 14:19 test1_6_conf.txt [A@localhost tests]$
Jutilise CentOS 6.4, Émulateur de terminal Gnome.
Réponse
Quest-ce que cela signifie? Quest-ce que « Sortie 2 »?
Il sagit de létat de sortie de ls
. Voir man pour ls:
Exit status: 0 if OK, 1 if minor problems (e.g., cannot access subdirectory), 2 if serious trouble (e.g., cannot access command-line argument).
Je suppose que la raison en est que vous avez beaucoup de fichiers * conf dans /etc
et pas de fichiers * conf dans / usr. En fait ls -ld /usr/*conf;
aurait eu le même effet.
Donc, si je le fais sur mon ordinateur ls
pour un existant file:
ls main.cpp; echo $? main.cpp 0
Et pour un fichier qui nexiste pas:
ls main.cppp; echo $? ls: cannot access main.cppp: No such file or directory 2
Ou comme processus darrière-plan ls pour un fichier qui nexiste pas:
>ls main.cppp & [1] 26880 ls: cannot access main.cppp: No such file or directory [1]+ Exit 2 ls main.cppp
Commentaires
Réponse
Cette commande est terminée avec un statut de sortie différent de 0 (succès).
Essayez de ne pas mettre (&) à la fin , pour voir ce qui se passe.
Si cette commande prend beaucoup de temps lors de son exécution, vous pouvez la vérifier avec:
lnx #> jobs -l
ls /usr/*conf
renvoie2
car il ny a aucun nom de fichier contenant " conf "./usr/*conf
. Etbash
lui passe ce nom de fichier car il ne peut ' trouver les fichiers qui correspondent à ce modèle. De meilleurs shells commezsh
auraient renvoyé une erreur " no match " et ne sexécuteraient pasls
du tout.