長い処理が終わったときに音を鳴らすならこんな感じ。
sleep 3; say finish
長い処理なのでバックグラウンドで実行させようとしてこんな風に書いても
sleep 3 &; say finish
当たり前だけど2番目のコマンドをすぐ実行しちゃう。
なので、こんな感じで普通にフォアグラウンドで実行するユーザー関数を作成して
function _f { sleep $1; say finish }
そいつをラップするユーザー関数内で、元関数をバックグラウンドで実行するように作成。
function f { _f $1 & }
これで
f 3
とやると、望んだ結果となる。
Macだとbellがないけど、sayが面白い。なんでも喋らせられるのか。オレの初音ミク。