如何使用 Google Home 远程关闭 Ubuntu?

如何使用 Google Home 远程关闭 Ubuntu?

如何使用 Google Home 远程关闭 Ubuntu?我想我需要 ssh、IFTTT 和一些 Android 应用程序,但我不知道该怎么做。Windows 指南有很多,但没有 Linux 和 Ubuntu 指南。

答案1

好的。过了一段时间,我让它工作了。

我使用 IFTTT、Dropbox 和 inotifywait(inotifywait 是一种当某些文件或文件夹发生变化时可以运行脚本或命令的工具)实现了关闭 Ubuntu。

它看起来像这样:我要求 Google Home 关闭 PC -> Google Home 要求 IFTTT 更改 Dropbox 中的文件 -> inotifywait 看到文件中的更改并关闭 PC。

一步步:

  1. https://www.dropbox.com如果您没有账户,请注册。

  2. https://www.dropbox.com/install 下载适用于 ubuntu 的包,双击安装该包。

  3. 在应用程序菜单中打开 Dropbox,完成连接帐户的过程。现在您的“主页”文件夹中应该有一个“Dropbox”文件夹。在“Dropbox”文件夹中创建文件夹“RemoteTurnOff”。在“RemoteTurnOff”文件夹中创建文件“fileToWatch.txt”您可以转到您的应用程序,打开“文本编辑器”,现在选择 3 点菜单,按“另存为”,找到并选择 RemoteTurnOff 文件夹。不要忘记将文件名更改为“fileToWatch.txt”

  4. 在“RemoteTurnOff”文件夹中创建文件“script.sh”。您可以转到应用程序,打开“文本编辑器”来执行此操作。将此代码粘贴到编辑器中:

#!/bin/sh
### BEGIN INIT INFO
# Provides:          filenotifier
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Something
# Description:       Something else
### END INIT INFO
cd /home/YOUR_USER_NAME/Dropbox/RemoteTurnOff
inotifywait -e close_write,moved_to,create -m . |
while read -r directory events filename; do
  if [ "$filename" = "fileToWatch.txt" ]; then
    systemctl poweroff
  fi
done

重要提示:将 YOUR_USER_NAME 更改为您的用户名。如果您不知道您的用户名:打开终端并输入

whoami

现在按下文本编辑器中的 3 点菜单,按“另存为”,找到并选择 RemoteTurnOff 文件夹。不要忘记将文件名更改为“script.sh”

  1. 右键单击 script.sh -> 属性 -> 权限 -> 单击“允许将文件作为程序执行”(应该选中)。

要确保它可以执行,请执行以下操作:右键单击 RemoteTurnOff 文件夹内的空白处。选择“在终端中打开”运行此命令:

sudo chmod +x script.sh
  1. 您现在可以测试脚本是否有效。打开 RemoteTurnOff 文件夹,右键单击空白处,选择“在终端中打开”,输入:

./script.sh

不要关闭终端,在编辑器中打开“fileToWatch.txt”,输入一些文本,保存更改。您的计算机应该会关闭。如果确实关闭,则一切正常 - 继续。

  1. 让我们让脚本在启动时在后台运行。打开终端,输入命令:

光盘/等

过去的命令

sudo nano rc.local

您现在应该处于文本编辑器模式。将此文本粘贴到编辑器中:

#!/bin/sh -e
sh '/home/YOUR_USER_NAME/Dropbox/RemoteTurnOff/script.sh' &
exit 0

您需要将 YOUR_USER_NAME 更改为您的姓名(如果您不知道姓名,请在另一个终端窗口中使用 whoami 命令来获取姓名)。不要忘记第二行末尾的“&”符号!

按 Ctrl+O 保存。按 Enter 确认名称。它应该如下所示:图片

按 Ctrl+X 退出终端中的文本编辑器模式。

现在运行此命令以使 rc.local 可执行:

sudo chmod +x rc.local

现在脚本应该在启动时在后台启动。测试一下:重启,然后转到 Dropbox -> RemoteTurnOff 打开“fileToWatch.txt”,粘贴一些文本并保存。PC 应该重启。所有艰苦的工作都完成了。接下来我们将 Dropbox 连接到 Google Home。

  1. https://ifttt.com/ 注册(最好使用google账号注册)

  2. https://ifttt.com/services/google_assistant/settings 连接到您的 Google Home。确保状态为活跃。

  3. https://ifttt.com/services/dropbox/settings 连接您的 Dropbox。确保状态为活动状态。

  4. 在 IFTTT 网站上,我们可以创建新的小程序。单击“我的小程序”,然后单击“创建小程序”。

  5. 按“+ this”,搜索“助手”,点击“Google 助手”

  6. 选择“说一句简单的短语”。

  7. 在下一个屏幕上填写您将用来与 Google Home 对话的短语。在我的情况下,它看起来像这样: 图片 然后按“创建触发器”

  8. 按“+ that”搜索“Dropbox”,选择“Dropbox”。在下一个屏幕上选择第三个选项:“附加到文本文件”

  9. 填写信息:

文件名 -> “fileToWatch.txt”

内容 -> “#”(可以是任何符号)

dropbox 文件夹路径 -> “RemoteTurnOff/”

图片

点击“创建操作”。最好禁用通知 - 太烦人了。

现在告诉你的 google home“关闭电脑”。

我可能忘记了一些步骤。如果它不起作用,请告诉我,我会帮助你并修复说明。在 Ubuntu 18.04 LTS 上测试。我创建问题不是为了回答它。当我创建问题时,我不知道答案。

要使用 Google Home 打开 PC,您无需在 ubuntu 中执行任何操作:有很多关于如何使用 WOL 和 android 执行此操作的说明。只需在 Google 搜索中输入“使用 Google Home 打开 PC”即可。

相关内容