如何让终端在命令完成时发出声音?

如何让终端在命令完成时发出声音?

假设我运行一个需要很长时间才能完成的命令,但我不想或不需要一直看着它,而且由于我还需要做一些其他的事情,我可能会陷入其中并忘记检查命令的执行情况一段时间...然后,当我最终检查时,我可能会发现该命令 3 小时前就完成了,需要我的注意...或者也许它不需要我的注意,如果我当时看到它已经完成了,我就会有更多的时间来运行更多的命令......

所以我想知道是否有办法让它在运行命令或程序时,无论何时完成并返回$,都能发出一点声音,比如播放 mp3 文件或类似的东西?虽然让它在 中工作是可以接受的gnome-terminal,但如果可能的话,我希望在尽可能多的 CLI 环境中使用它,包括 TTY... 我正在运行带有 GNOME 3.18 的 Ubuntu GNOME 15.10。

答案1

首先,运行以下命令来启用pcspkr和安装beep

sudo sed -i 's/blacklist pcspkr/#blacklist pcspkr/g' /etc/modprobe.d/blacklist.conf
sudo modprobe pcspkr
sudo apt-get install beep

beep现在,运行以下命令:

sudo apt-get update; beep

或者

sudo apt-get update; beep;beep;beep;beep;beep

最后,要控制的音量beep,请通过运行以下命令更改beep音量:alsamixer

alsamixer

现在,使用右箭头键滚动到自动静音选项。使用向上箭头将其关闭。

然后使用左箭头键滚动至蜂鸣声并使用向上或向下箭头键提高或降低蜂鸣声的音量。

使用M键可将任意频道静音或取消静音。

ESC退出alsamixer

您可以在以下位置找到更多蜂鸣选项:

man beep

编辑

现在,为了让终端在运行每个命令后发出蜂鸣声,请运行以下命令:

cp .bashrc .bashbackup
echo 'PROMPT_COMMAND="beep"' | tee -a .bashrc
. .bashrc

相关内容