GNU/Linux >> Tutoriels Linux >  >> Linux

Bip sur Linux en C

Le bip le plus basique est toujours '\a' , si votre terminal le supporte :

fprintf(stdout, "\aBeep!\n" );

Veuillez regarder le Linux standard beep code source.http://www.johnath.com/beep/beep.c

Il utilise KIOCSOUND ioctl pour "bip", mais vous n'avez pas besoin de privilèges de superutilisateur pour le faire jouer. Je l'ai configuré pour qu'il soit lisible et exécutable par les utilisateurs du groupe "bip".

Donc, mon utilisateur standard avec l'UID 1000 est dans le groupe avec le GID 501 (je l'ai appelé "bip"). À côté de cela, je devais chmod 4750 /usr/bin/beep et maintenant je peux jouer des bips (dans la gamme 20-20000Hz) sans demander les privilèges de superutilisateur.


Je pense que la seule façon de le faire est soit d'utiliser suid pour donner à mon propre programme un accès root, soit d'utiliser beep , qui a déjà suid. Je suppose que je vais juste ajouter une autre dépendance, alors, comme beep n'est pas trop grand de toute façon.

Merci pour toutes les réponses, je suis sûr que d'autres bibliothèques sont parfaites pour des signaux plus complexes, mais j'en ai besoin d'une très simple !

Je pense que cette question peut être marquée comme résolue / fermée, alors.

Si quelqu'un trouve un moyen de créer un bip en utilisant la console sans privilèges de superutilisateur, je suis toujours intéressé par cette solution :)

Merci encore à tous.


Linux
  1. 4 alternatives à cron sous Linux

  2. Espaces de noms Linux

  3. Commande Linux mv

  4. Linux du command

  5. Commande IP Linux

Durcissement de Kali Linux

Téléchargement Kali Linux

Commande W sous Linux

À la commande sous Linux

Commande Df sous Linux

Linux contre Unix