Skip to main content

How to Play a Sound After a Terminal Command Completes

 


Sometimes, while working on the terminal, especially during long-running processes, it’s useful to have an audible notification when the task is finished. In this guide, we’ll show you how to make your terminal play a sound after any command completes, ensuring you're alerted without constantly checking the terminal.


Why Do This?

This trick can save time and improve workflow, especially when:

  • You’re running lengthy build processes or installations.
  • You’re waiting for large file transfers.
  • You're programming embedded systems and need confirmation when flashing is done.

Let’s dive into how to do this on a Linux system.

Step-by-Step Guide to Playing a Sound After a Command


1. Using paplay or aplay to Play Sounds

On most Linux distributions, you can use paplay or aplay to play sound files directly from the terminal. Here's how you can append a sound notification after a command.


Basic Command Structure:

PC:~$ your_command && paplay /path/to/soundfile.oga 

Or, if you're using aplay (for .wav files):

PC:~$ your_command && aplay /path/to/soundfile.wav

  • your_command is any terminal command you wish to execute.
  • && ensures the sound plays only if the command completes successfully. If you want it to play regardless of success or failure, use a semicolon ;.
  • /path/to/soundfile is the location of the sound file you want to play. There are often default system sounds available in /usr/share/sounds/.
  • Making It Even More Generic 

    To make this method even more flexible, you can create a simple alias or function in your .bashrc file that appends sound to any command you run.


    notify_when_done() {

        $1 && paplay /usr/share/sounds/freedesktop/stereo/complete.oga

    }

    Now, you can run:

     notify_when_done "your_command"

    Conclusion 

    Feel free to customize the sound files to your liking and make your terminal experience a little more user-friendly!


    Pro Tip: You can extend this method to use visual notifications as well, like notify-send, for even more robust alerts!

    Comments

    Popular posts from this blog

    Building a Robot Actuator with ESP32 and a 5010 BLDC Motor

    Introduction Modern robotics demands actuators that aren’t just strong, but also smart — capable of precise control, smooth motion, and safe human interaction. Traditional servos are great for small robots, but they can be stiff, noisy, and limited in range or torque. This project demonstrates a custom robot actuator built around a 5010 360 KV brushless DC (BLDC) motor , controlled by an ESP32 running the SimpleFOC library. The goal is to create a compliant joint — one that can be moved by hand, but automatically returns to its home position with adaptive stiffness. 🧠 What Makes This Actuator Special Unlike a typical servo, this actuator behaves intelligently : You can turn it by hand — it feels soft and back-drivable. When you release it, the motor returns to its initial position smoothly. If you twist it harder (e.g., due to gear reduction), it becomes stiffer , resisting displacement more strongly. It’s powered by 12 V and controlled by a simple ESP32 boar...

    Heating with Electric Radiators

    You want to heat your small garage using a couple of electric radiators. The power and voltage requirements for each radiator are 1200 W, 240 V. But you are not sure how to wire the radiators to the power supplied to the garage. Should you use the wiring diagram on the left or the one on the right? Does it make any difference?