我正在尝试按照 George Georgovassilis 在此处所做的操作从 Axis 嵌入式 Linux 产品中控制 Kasa Smartplug:https ://blog.georgovassilis.com/2016/05/07/controlling-the-tp-link-hs100- wi-fi-smart-plug/ 我已经设法从 Axis 盒子打开和关闭插头,但我在尝试查询 Smartplug 的开/关状态时遇到了困难,因为我没有 od(或 hd , hexdump 或 xxd) 并且 Smartplug 输出是二进制的。执行此操作的 George 代码片段是:
decode(){
code=171
input_num=`od $ODOPTS`
IFS=' ' read -r -a array <<< "$input_num"
args_for_printf=""
for element in "${array[@]}"
do
output=$(( $element ^ $code ))
args_for_printf="$args_for_printf\x$(printf %x $output)"
code=$element
done
printf "$args_for_printf"
}
有没有办法我可以使用基本的 shell 命令而不是使用 od 来做到这一点?Axis 盒子说它是 crisv32 上的 Linux 2.6.29,我大约 30 年前曾经使用 Unix,所以我很挣扎......