放心,我,在完成终端命令时会收到通知

分散我的注意力

在下一篇文章中,我们将介绍一个名为Undistract-me的实用程序。 这个脚本我们 命令完成后将显示警告 我们正在 终端。 当启动命令后我们开始处理其他事情时,这可能会很有用。 有了它,我们将不需要经常检查终端以查看命令是否已完成。 当长时间运行的命令完成时,Undistract-me实用程序将通知我们。 适用于Arch Linux,Debian,Ubuntu和其他衍生产品.

当您没有足够的纪律坐下来观察命令运行时,此实用程序将派上用场。 我们的脚本 当长时间运行的命令完成时,在桌面上显示提示,这样我们就可以将时间专用于某些事情,而不是在命令到达末尾时查看终端。

安装Undistract-me

我分心是 在默认的Debian仓库及其变体中可用,例如Ubuntu。 我已经在Ubuntu 17.10上对其进行了测试。 任何想要查询的人都可以在页面上查询此脚本的源代码。 通过GitHub 的项目。

要将其添加到系统中,您所需要做的就是在终端中运行以下命令(Ctrl + Alt + T)进行安装:

sudo apt install undistract-me

安装完成后,在同一终端上,运行以下命令以: 在您的bash中添加“ undistract-me”:

echo 'source /etc/profile.d/undistract-me.sh' >> ~/.bashrc

或者,您可以运行以下命令将其添加到您的Bash中:

echo "source /usr/share/undistract-me/long-running.bash\nnotify_when_long_running_commands_finish_install" >> .bashrc

最后 更新变更 在同一终端上运行:

source ~/.bashrc

配置我不受干扰

更改通知时间

默认情况下,Undistract-me将把花费超过10秒才能完成的任何命令视为长时间运行的命令。 但这可以改变。 可以通过编辑编辑文件来更改此时间间隔 /usr/share/undistract-me/long-running.bash。

我分散注意力的时间

sudo nano /usr/share/undistract-me/long-running.bash

在文件内部,我们将必须找到变量 “ LONG_RUNNING_COMMAND_TIMEOUT” 并更改 默认值(10秒) 为您选择的另一个价值。 然后保存并关闭文件。 不要忘记通过执行以下命令来更新更改:

source ~/.bashrc

启用/禁用特定命令的通知

此外,我们将能够禁用特定命令的通知。 为此,我们将必须搜索变量 “ LONG_RUNNING_IGNORE_LIST” 并添加 受影响的命令之间用空格隔开.

启用/禁用活动窗口检查

默认, 仅当活动窗口不是执行命令的窗口时,才会显示通知。 这意味着,仅当命令在后台窗口中运行时,我们才会收到通知。 如果在活动窗口中执行该命令,则不会显示通知。 如果我们希望做出这种区分,我们将能够进行配置 忽略_WINDOW_CHECK。 我们将选择 1跳过窗口检查.

启用声音通知

分散我的另一个很酷的功能是 您可以设置音频通知 以及命令完成时的视觉通知。 默认情况下,它将仅发送视觉通知。 您可以通过设置变量来更改此行为 UDM_PLAY_SOUND en 一个非零整数 在线上。 但是,我们的Ubuntu系统必须具有实用程序 Pulseaudio-utils y 无声音主题的桌面 已安装以启用此功能。

请记住,您必须执行以下命令来更新所做的更改:

source ~/.bashrc

测试我分心

现在是时候检查一下它是否真正起作用了,让我们看看长时间运行的终端命令完成后是否显示通知。 现在运行 任何需要10秒钟以上的命令 或您定义Undistract-me配置的时间长度。

对于此示例,我只对指定网络上的其中一台路由器执行ping操作。 此命令耗时约25秒。 完成命令后,我在桌面上收到以下通知。

pingundistract-me通知

请记住,Undistract-me脚本仅在给定命令花费了10秒钟以上才能完成并且正在运行的终端不是活动窗口的情况下才报告。 如果命令在不到10秒的时间内完成,则不会通知您。 当然,您可以按照“设置”部分中所述更改此时间间隔设置。

我发现此工具对在码头工作的我们所有人非常有用。 由于易于使用和安装,因此我认为这是任何计算机都不应缺少的东西。


发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责数据:MiguelÁngelGatón
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。

  1.   伦纳德·苏亚雷斯(Leonhard Suarez)

    这有基本的操作系统,很棒