Vous n'êtes pas identifié(e).
Il va donc ,exemple chez moi, m'indiquer les infos suivantes:
je voudrais que ça repère la ligne "alsa_output.pci-0000_05_02.0.analog-surround-51.monitor" et la mémorise.
Que ça lance après la capture du son monitor vu qu'il a l'info de la sortie.
la capture serait du style :
avconv -ac 2 -ar 48000 -f pulse -i LA-SORTIE-PCI-MONITOR -acodec copy ~/Musique/Monitor-$(date +%F-%H-%M-%S).wav
C'est pour que n'importe qui puisse lancer ce script sans avoir à écrire la LA-SORTIE-PCI-MONITOR dans celui-ci.
Dernière modification par Anonyme (25-06-2015 16:31:49)
NB: la partie gérant le filtre pour trouver la bonne ligne est celle-ci: «
Et tu peux ajuster ton filtre en testant :
captnfab,
Association Debian-Facile, bépo.
TheDoctor: Your wish is my command… But be careful what you wish for.
Hors ligne
Dernière modification par Anonyme (25-06-2015 16:52:52)
Parmi elles, on s'intéresse uniquement à celles qui contiennent alsa et monitor sur la même ligne :
(équivalent à
mais comme on a besoin de sed après, autant déjà l'utiliser ici…)
Et on ne veut garder que ce qu'il y a après les « : »
Enfin, ce que l'on obtient, on veut le passer dans la commande que tu m'as donnée:
La suite ? Je ne sais pas… Convertir le wav en qqch de plus léger ? Lire le morceau ? L'uploader quelque part ? Gérer le cas avec plusieurs cartes son ?
captnfab,
Association Debian-Facile, bépo.
TheDoctor: Your wish is my command… But be careful what you wish for.
Hors ligne
Et on ne veut garder que ce qu'il y a après les « : »
pactl list sources | sed -n '/alsa.*monitor/s/.*: \(.*\)$/\1/p'
C’est le point à partir duquel je ne comprends plus rien à la syntaxe de sed.
Sans utiliser sed je ferais :
Je ne dis pas que c’est mieux hein, mais il y a une ligne que je comprends alors que l’autre non
Hors ligne
sed -n : demande à sed de ne pas afficher les lignes.
/alsa.*monitor/ : sélectionne les lignes qui correspondent au motif.
s/.*: \(.*\)$/\1/ commande de substitution.
p : flag de la commande de substitution qui demande à sed d'afficher dans le cas
où la substitution est faite
la commande de substitution :
s/.*: \(.*\)$/ : partie motif
.* : n'importe quel caractère zéro ou plus de fois.
«: » : le caractère : suivi d'un espace
\(.*\)$ : groupe de caratères (zéro ou plus de n'importe quel
caractère), mis en mémoire grâce au parenthèses et
en fin de ligne ($).
/\1/ partie substitution : on remplace par le motif qui correspond
à la première paire de \( \).
C'est tout !
Hors ligne
Hors ligne
Dernière modification par Anonyme (26-06-2015 15:35:21)
Hors ligne