Pierre ESTREM, on 2020-03-23 22:15:20 +0100:
> Aïe, il y a des chevrons qui encadrent le nom des cartes.
> J'ai des erreurs avec ton code, mais je vous remercie de votre
> participation.

Quelles erreurs se produisent exactement ?
Et sur quelle version de Debian ?

J'ai vérifié avec ma configuration de cartes son et j'obtiens la
sortie suivante chez moi, indépendemment de l'implémentation de
Awk (mawk vs gawk vs busybox) :

        alsa_card.pci-0000_01_00.1      hdmi-stereo
        alsa_card.pci-0000_00_14.2      analog-stereo
        alsa_card.pci-0000_00_14.2      analog-stereo+input
        alsa_card.pci-0000_00_14.2      analog-surround-21
        alsa_card.pci-0000_00_14.2      analog-surround-21+input
        alsa_card.pci-0000_00_14.2      analog-surround-40
        alsa_card.pci-0000_00_14.2      analog-surround-40+input
        alsa_card.pci-0000_00_14.2      analog-surround-41
        alsa_card.pci-0000_00_14.2      analog-surround-41+input
        alsa_card.pci-0000_00_14.2      analog-surround-50
        alsa_card.pci-0000_00_14.2      analog-surround-50+input
        alsa_card.pci-0000_00_14.2      analog-surround-51
        alsa_card.pci-0000_00_14.2      analog-surround-51+input
        alsa_card.pci-0000_00_14.2      analog-surround-71
        alsa_card.pci-0000_00_14.2      analog-surround-71+input
        alsa_card.pci-0000_00_14.2      iec958-stereo
        alsa_card.pci-0000_00_14.2      iec958-stereo+input
        alsa_card.pci-0000_00_14.2      iec958-ac3-surround-51
        alsa_card.pci-0000_00_14.2      iec958-ac3-surround-51+input
        alsa_card.platform-pcspkr       mono-fallback
        alsa_card.platform-pcspkr       multichannel-output

Mais peut-être que j'ai mal compris le problème ?  Avec une
correction mineure sur le premier split pour régler une bonne
fois pour toute cette histoire de chevrons, et en mode « one
liner épique », je propose :

        pacmd list-cards | awk '/^\tname: <.*>$/{split($0,n,"^\tname: 
<|>$");}/^\t+output:/{split($0,o,":");printf "%-31s %-s\n",n[2],o[2]}'

Peut-être que j'ai eu la mauvaise idée de tester sur Sid, et que
les autres versions de Debian se comportent différement ?

> J'ai une horreur de 'awk' (c'est ma faute).
> J'ai avancé avec la solution sed mais je dois passer ensuite par des boucles
> for.

J'ai du mal à me représenter de solution simple en sed ou en
shell ; mais j'imagine que c'est possible.  Si vous y parvenez,
alors je serais curieux de la voir.  N'hésitez pas à la poster !

Amicalement,
-- 
Étienne Mollier <[email protected]>
Fingerprint:  5ab1 4edf 63bb ccff 8b54  2fa9 59da 56fe fff3 882d
Et Hip, Hip, Hip, Hourra !   Pour le personnel infirmier !   \o/

Attachment: signature.asc
Description: PGP signature

Répondre à