gpt4 book ai didi

python - 使用 Bash 控制 TP-Link Kasa 本地交换机

转载 作者:行者123 更新时间:2023-12-04 07:37:33 26 4
gpt4 key购买 nike

我安装了python-kasa从我的本地服务器控制 TPLink 智能家居设备的库。虽然从命令行发出命令很简单,但我试图根据查询结果在 Bash 中执行它们。我的困境纯粹是我的编码能力,我正在寻找正确方向的插入力。我想做的是遵循以下语法不正确的困惑:

   if kasa --host 127.0.0.2 status on; then
echo "already its on"
else
kasa --host 127.0.0.2 on
echo "now its on"
fi
当您发出命令“kasa --host Device_IP state”时,您会得到以下结果。
No --strip nor --bulb nor --plug given, discovering..
== Red light - HS210(US) ==
Host: 127.0.0.2
Device state: OFF

== Generic information ==
Time: 2021-05-23 21:16:31
Hardware: 2.0
Software: 1.1.4 Build 200821 Rel.092912
MAC (rssi): XX:XX:XX:XX:XX:XX (-33)
Location: {'latitude': XXXXXX, 'longitude': -XXXXXX}

== Device specific information ==
LED state: True
On since: None
促使我需要一个 bash 脚本来控制设备的核心原因是因为我住在一个有线互联网服务糟糕的地区,通常需要重新启动调制解调器,这在家里很简单,但在异地时就没有那么多了。我想创建一个脚本,cron 将每十分钟左右运行一次,并检查是否可以访问互联网和/或电缆调制解调器的电源是否已打开。基本上,如果电源关闭,则打开它,如果互联网关闭,则关闭电源然后再打开以使其再次运行。

最佳答案

也许像这样的东西?

#!/usr/bin/env bash

if kasa --host Device_IP state 2>&1 | grep -Fq 'Device state: OFF'; then
: restart or start the device here
elif kasa --host Device_IP state 2>&1 | grep -Fq 'Device state: ON'; then
: device is already on
fi

关于python - 使用 Bash 控制 TP-Link Kasa 本地交换机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67666137/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com