Je viens de constater que la sortie de wc -l diffère selon qu'elle est appelée directement ou entourée de guillemets. Par exemple :
pgrep bash | wc -l
donnerait 1, car il y a un processus bash en cours d'exécution. Mais en mettant cette commande entre parenthèses
echo `pgrep bash | wc -l`
J'ai d'abord pensé que les backticks ouvriraient un nouveau processus bash, mais
echo `pgrep bash`
ne trouve que le même processus que ci-dessus. Il en est de même lorsque l'on enferme la commande dans $() :
echo $(pgrep bash | wc -l)
Cela produira également 2. Quelqu'un sait-il pourquoi il en est ainsi ?