2017-02-17 148 views
1

我正在製作Mac OS shell中的遊戲動畫,我希望它能播放音樂。因此,我(試圖)利用Mac OS的afplay功能,它可以直接從外殼播放mp3文件等聲音文件。這是我的代碼示例:在Mac sh中運行afplay並運行腳本的其餘部分?

afplay ~/music.mp3 
echo "THE YEAR IS 2020" 
clear 
echo 
echo "THE YEAR IS 2020" 
clear 
echo 
echo 
echo "THE YEAR IS 2020" 
clear 

然而,在afplay ~/music.mp3線,它只是坐在一個空白屏幕。有沒有辦法讓它播放聲音並同時運行腳本的其餘部分?

回答

0

通過在末尾標記&(與符號),可以使命令在後臺運行。在afplay的情況下,還有一些信息被打印到屏幕上。幫助文件沒有顯示如何禁用,因此更危險的解決方案是將它重定向到/ dev/null。

afplay ~/music.mp3 &>/dev/null & 
echo "THE YEAR IS 2020" 

echo "THE YEAR IS 2020" 

echo "THE YEAR IS 2020" 

哦,並停止音樂plaing,運行kill $!$!是一個特殊變量,它包含最新後臺進程的PID。

+0

有沒有其他方法可以殺死進程? – keeganjk

+0

你可以通過發送'終止停止'信號'kill -TSTP $!'來更輕鬆地停止它,這相當於按下Ctrl-Z來停止前臺進程。如果你這樣做,你可以運行'kill -CONT $!'來恢復進程。 – AkselA