- Published on
Only Run Shell Command If it Exists
- Authors
- Name
- Yair Mark
- @yairmark
As part of my day to day flow, I use the excellent noti to create a notification on Mac when a long-running command line job finished. This should also work on Linux and Windows.
Using noti
is pretty straightforward:
longRunningCommand | noti
The above command will run and will call noti
once it is done which triggers a notification.
You can also tell noti
what title to use:
longRunningCommand | noti -t "Super long job complete!"
I regularly use this in build scripts but not all my colleagues do. To get around this we can tell our scripts to only run noti
if it is present. We do this as follows:
if type noti > /dev/null;then noti -t "DONE - Super long script"; fi
The then
part of the if
statement is only hit if noti
exists otherwise nothing will happen.
This line can easily be slotted into a makefile
target or/and a bash
script.