如何自定义 ping 命令的声音?

如何自定义 ping 命令的声音?

声音 ping 是网络故障排除的一个很好的工具。
但有时你需要开始不止一个可听到的 ping 声同时:

$ ping -a 192.168.100.5

在另一个终端上:

$ ping -a 192.168.100.6

不看屏幕就知道可能很有用IP 回答了什么ping,但如果声音相同,我无法判断。

有什么办法可以指定声音通过可听 ping 命令生成或暂时更改它?

答案1

声音是终端接收到响铃字符时发出的,因此很难更改。您可以做的是编写一个小脚本来以数字形式读出 IP 地址。例如,获取来源 tgz到 debiansaytime程序。这不是使用的版本节日包,而是有自己的一小组数字 0 到 9(以及更多)的录音。

解压 tar 源文件,然后进入目录saytime-1.0.orig/sounds/并创建从文件oh.au0.au.然后,您可以 ping 某些内容,-a但间隔至少 2 秒,并将输出通过管道传输到 awk 脚本中,该脚本运行aplay(包的一部分alsa-utils)以说出 IP 地址的最后一个数字:

cd saytime-1.0.orig/sounds
ln -sf oh.au 0.au
ping -i 2 192.168.0.254 |
stdbuf -oL awk '
/ from /{split($4,x,".")
        f = "aplay -q -f mu_law "
        for(i=1;i<length(x[4]);i++)f = f " " substr(x[4],i,1)".au"
        print f }' |
sh -x

相关内容