在脚本运行时从bash脚本显示启动屏幕或对话框

时间:2018-12-17 20:51:27

标签: bash macos terminal sh tput

我想在我的脚本在后台运行时创建一个初始屏幕/活动对话框,以通知用户正在发生的事情。我的脚本文件启动了本地应用程序的不同组件,并且有一堆用户不需要查看/理解的单词和内容。我知道如何使脚本在后台运行,但我想知道如何启动对话框,新的终端窗口,通知或类似内容,以便在每个组件启动后让用户知道。

例如,我有4个组成部分,因此框会显示:

组件1之4已成功启动。.

组件2之4已成功启动。.

以此类推...

我在一段时间没有运气的情况下进行了搜索,因此得到了任何帮助。 要添加的一件事是,我能够使用以下代码打开一个新的终端窗口: /Applications/Utilities/Terminal.app/Contents/MacOS/Terminal&

那会很好,但是当我回声时,它仍然会转到第一个。

1 个答案:

答案 0 :(得分:0)

您还可以通过启动通知消息通知用户:

osascript -e 'display notification "hello"'

甚至是对话框,但这将等待用户单击“确定”按钮:

osascript -e 'display alert "Hello"'

示例:

#!/bin/bash

osascript -e 'display notification "Component 1 of 4 successfully started.." with title "in progress"'
sleep 2
osascript -e 'display notification "Component 2 of 4 successfully started.." with title "in progress"'
sleep 2
osascript -e 'display alert "Processing done."'