Jouer un son via Terminal
Greensource
Membre
Coucou! Je voudrais jouer un son via une commande par le terminal, pour me signifier la fin, ou l'erreur dans mes compilations.
Je sais qu'il y a beep sous Linux mais je ne connais pas d'équivalent sous MacOSX.
Juste un Buzz me suffirais, je veux pas une mélodie de Mozart non plus! :P
Je sais qu'il y a beep sous Linux mais je ne connais pas d'équivalent sous MacOSX.
Juste un Buzz me suffirais, je veux pas une mélodie de Mozart non plus! :P
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Saud que j'ai un #include <curses>
Mais à la compile je ne sais pas qu'elle library linké:
ou si plutôt qu'un beep tu veux qu'il prononce une phrase :
Par contre je ne suis pas sûr qu'on puisse lui demander de jouer un fichier son autre (mp3 ou autre)
Par contre le "beep" marche pas chez moi.
Merci
- "echo "
- suivi de ctrl-V (pour dire "attention le caractère suivant me l'interprète pas écrit le sur la ligne tel quel")
- puis de ctrl-G.
(donc ne pas mettre le "^" littéralement sur la ligne de commande hein)
L'appui sur ctrl-G après un ctrl-V (ce dernier demandant la non-interprétation) va insérer "^G" sur la ligne, et une fois qu'on valide ce "echo ^G" le "^G" est interprété et bien transformé en caractère ascii de code 7 (soit le caractère nommé "BEL", qui fait un beep)
Testé et approuvé.
Pour avoir un beep, il faut écrire:
sans chiffre c'est équivalent à "osascript -e "beep 0" -> donc "silence"!
Bien sur, "beep 5" donne 5 beeps.
[tt]echo ^G[/tt] est donc définitivement le moyen le plus simple de faire un beep via un shell script.
Au fait j'y pense, vu que c'est pour te signaler qu'une action est terminée, tu peux aussi utiliser "growlnotify", c'est l'outil idéal pour envoyer des notifications (Bon il faut avoir installé Growl, mais qui n'a pas installé ce super outil d'affichage de notifications répandu et utilisé par plein d'applis ? et installé "growlnotify" qui est fourni avec l'image disque de Growl)
Je vais aussi regarder avec Applescript il doit y avoir un moyen de faire comme beep mais avec le flash de l'écran.
[edit:] Pas trouvé de flash, mais finalement j'ai fait le script suivant:
tout simplement...
osascript -e 'say "it is finished" '
:P Chez moi ça marche et c'est plus rigolo que bip bip bip.
si nécessaire, régler d'abord le volume: osascript -e 'set volume .... etc
Ca vous a déjà fait un truc comme ça?
En tout cas je la sent passer la fin de compilation! :P
En lui faisant prononcer de l'anglais inexistant, on a l'impression que le Mac cause "French":
osascript -e 'say "say feeny" '
et un français entant: c'est fini.
:P Very amazing isn't it !
Si t'écris un programme en C, évidemment que le printf est plus adapté.
Si t'écris un programme en shell script, ce qui semble être le cas, un echo ^G est tout aussi simple qu'un printf, et plus adapté.
Ca dépend du langage. C ==> printf, bash ==> echo
Ben non, "printf" en shell permet d'afficher les caractères spéciaux bien plus facilement que "echo" (avec leur séquence hexa UTF-8 même si on veut)
Exemple :
Surtout que si c'est pour mettre dans un script, je sais pas si ta bidouille de ctrl-V ctrl-G fonctionne...
(Mais bon dans un script ou dans le terminal, ctrl-V+ctrl-G fonctionne pareil, c'est juste pour insérer le caractère au lieu de l'interpréter (un peu comme quand tu tapes le anti-slash quoi :P)
Mais c'est vrai que du coup printf marche aussi bien
Ah! désolé j'ai pris le train en marche et j'ai sauté le début!
Rouge de honte!!