shellaudio

In a bash script/command how can I make a PC beep noise, or play a sound file?


I have some long running scripts with breaks requiring input/interaction to continue but when I switch to another window I'd like to be notified (by sound) that a task is complete and now awaiting input.

I would prefer to be able to play an audio clip (*.mp3, *.ogg, etc.) but wouldn't care if the only solution is to make the PC Speaker beep noise.

Any ideas? I'm open to any CLI utilities I can install that play sounds that in turn I can execute when needed.

FYI: My System is running WinXP Pro.

UPDATE: Doh! My Windows > Control Panel > Sounds > Default Beep: was set to (none). Grrr...

Problem solved.


Solution

  • Try this:

    echo ^G

    (^G is obtained by ctrl+G).

    Note: you can't copy and paste this code in a batch file, it won't work. To obtain a ^G character in a file, type in a cmd window:

    echo ^G > beep.txt

    (again, ^G is obtained by ctrl+G).

    Then you'll have a file named beep.txt, open it with notepad, there will be a square character. This is our ^G once it is saved in a file.

    You can then copy and paste it in a batch file to make a sound (don't forget to put "echo" in front of it).