小编Raz*_*Taz的帖子

使用不同的消息或声音自动结束终端中的每个命令

我安装了SVOX pico2wave并创建了一个脚本。现在当我输入:

speech "Hello world"
Run Code Online (Sandbox Code Playgroud)

计算机文本到语音引擎会大声说“Hello world”。此外,我在定义为.bashrc的变量中使用PROMPT_COMMAND

PROMPT_COMMAND="speech 'Command executed.'"
Run Code Online (Sandbox Code Playgroud)

因此,在终端中返回提示之前,漂亮的文本到语音引擎会大声告诉我命令已执行。

然而,一段时间后这会变得无聊,我认为在终端中结束每个命令并且计算机说不同的文本行会非常酷(想想 Starship Enterprise 的自动驾驶仪)。

所以我在 .bashrc 中创建了一个数组变量,带有不同的消息:

array[0]="Shields at 90%"
array[1]="Engaging proton overdrive"
array[2]="Autopilot disengaged"
array[3]="Targetting solution available"
array[4]="Alert. Incoming missile."
array[5]="Deploying countermeasures."
array[6]="Firing torpedoes."
array[7]="Engaging auto-cannon."
array[8]="Severe damage on deck 17. Sealing off."
array[9]="Deploying repair droids to deck 17."
Run Code Online (Sandbox Code Playgroud)

我想要的是,每次我在终端中运行命令时,PROMPT_COMMAND都要更新变量并读取数组中不同的随机行。

我想我需要一个循环,但我不知道如何制作它。

如果有任何帮助,我将不胜感激。谢谢你。

sound command-line bash

21
推荐指数
1
解决办法
1267
查看次数

标签 统计

bash ×1

command-line ×1

sound ×1