bonjour ,
en essayant de comprendre comment fonctionne une substitution de processus j’ai obtenu un curieux affichage : alors que selon le manuel wc -l devrait afficher un nombre de lignes il affiche aussi un nom de fichier temporaire
mm@Xfce:~$ ls | wc -l
11
mm@Xfce:~$ wc -l <(ls)
11 /dev/fd/63
m@Xfce:~$ wc -l <(ls) <(lsa) ( lsa = alias dérivé de ls)
11 /dev/fd/63
41 /dev/fd/62
52 total
je pense avoir compris le rôle des fichiers temporaires /dev/fd/63 et 62 , mais ce que je ne comprends pas c’est : comment une commande destinée à afficher un nombre de lignes , ce qu’elle fait dans les deux cas d’ailleurs , peut aussi afficher le nom d’un fichier ?
Je suppose que si cet affichage existe c’est bien qu’il a été prévu dans le comportement de la commande wc et donc que le manuel proposé par man ne répertorie que les cas courants . Où trouver le manuel de référence expliquant chaque commande en détail car je n’ai rien vu dans le manuel de référence bash ?
ps : note sur une similarité où je ne prévoyais aucune sortie puisque ce n’est pas la fonction de echo de lire un fichier
mm@Xfce:~$ echo <(echo foo)
/dev/fd/63
il doit donc s’agir d’un comportement général de bash . Je vais retourner sur le manuel de référence , au cas où … mais toute suggestion est bienvenue .