如何利用WorkBuddy编写跨平台脚本_检测操作系统执行不同指令

千明吖_5715

千明吖_5715

2026-04-14

1079人浏览

原创

workbuddy支持四种跨平台os识别方法:一、用$ostype变量判断并执行对应通知命令;二、用python脚本通过sys.platform精确分支控制;三、依赖内置wb_platform环境变量实现高安全性适配;四、通过/applications、/proc、c:/windows等路径特征间接识别系统。

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如何利用workbuddy编写跨平台脚本_检测操作系统执行不同指令

如果您希望编写一段能在WorkBuddy环境中自动识别当前操作系统并执行对应指令的脚本,则需借助WorkBuddy支持的跨平台Shell执行能力与环境变量检测机制。以下是实现该目标的多种方法:

一、使用内置Shell指令判断系统类型

WorkBuddy在执行Shell命令时,可直接调用系统原生命令获取OS信息,无需额外依赖,适用于Windows/macOS/Linux三端统一部署的快捷指令场景。

1、在WorkBuddy电脑端设置界面中,进入【远程指令】→【新增指令】。

2、填写指令名称为“跨平台诊断脚本”,命令类型选择“Shell命令”。

3、在命令栏输入以下多行脚本(确保使用Unix换行格式):
if [[ "$OSTYPE" == "darwin"* ]]; then
  echo "macOS detected"; osascript -e 'display notification "WorkBuddy运行于macOS" with title "系统识别"' ;
elif [[ "$OSTYPE" == "linux"* ]]; then
  echo "Linux detected"; notify-send "WorkBuddy" "运行于Linux";
elif [[ "$OSTYPE" == "msys" ]] || [[ "$OSTYPE" == "win32" ]]; then
  echo "Windows detected"; powershell -Command "& {[System.Windows.Forms.MessageBox]::Show('WorkBuddy运行于Windows', '系统识别')}" ;
else
  echo "Unknown OS: $OSTYPE";
fi

4、勾选“允许手机端调用”,点击保存。

5、在手机WorkBuddy App的【远程控制】页签中找到该指令卡片,点击执行按钮。

二、通过Python脚本封装跨平台逻辑

利用WorkBuddy对Python解释器的原生支持,编写具备os模块探测能力的Python脚本,可精确区分系统发行版及位数,适配更复杂的分支控制需求。

1、在电脑端创建文件:/Users/yourname/scripts/os_router.py(macOS/Linux)或 C:\WorkBuddy\scripts\os_router.py(Windows)。

2、写入以下内容:

import os, sys, subprocess
def run_on_mac():
  subprocess.run(['osascript', '-e', 'display notification "macOS任务启动" with title "WorkBuddy"'])
def run_on_linux():
  subprocess.run(['notify-send', 'WorkBuddy', 'Linux任务启动'])
def run_on_windows():
  subprocess.run(['powershell', '-Command', '$host.ui.WriteLine("Windows任务启动")'])
if sys.platform == "darwin":
  run_on_mac()
elif sys.platform.startswith("linux"):
  run_on_linux()
elif sys.platform in ["win32", "cygwin"]:
  run_on_windows()
else:
  print(f"Unsupported platform: {sys.platform}")

3、在WorkBuddy【远程指令】中新增指令,命令类型设为“Python脚本”,路径填写上述.py文件的绝对路径。

4、确保电脑端已安装对应Python版本(Windows需确认PATH含python.exe;macOS/Linux建议使用python3)。

协同养育操作系统
协同养育操作系统

协同养育操作系统(Co-Parenting OS)— 离异家庭专业协同养育支持系统。12模块覆盖接送管理、成长记忆库、孩子观察站、亲子关系粘合剂、共同挑战中心、情绪冲突观察、父母成长、成长档案馆、成长阶段引擎、风险预警、驾驶舱、被恶意攻击急救包。当用户涉及离异家庭育儿、协同养育、抚养探视、接送安排、孩子成长记录、亲子关系、离异冲突、被恶意攻击、前任矛盾等话题时触发。

下载

5、手机端刷新【远程控制】页签后执行该指令。

三、基于WorkBuddy内置环境变量注入机制

WorkBuddy客户端在启动时会向所有执行上下文自动注入WB_PLATFORM环境变量,其值为win、mac或linux,该变量稳定可靠且无需shell解析,适合高安全性指令链场景。

1、在WorkBuddy设置中启用【高级执行模式】,确保环境变量透传功能开启。

2、新建Shell指令,命令栏输入:
case "$WB_PLATFORM" in
  win) powershell -Command "Write-Host 'Platform: Windows' -ForegroundColor Green" ;;
  mac) osascript -e "display alert \"Platform: macOS\" as critical" ;;
  linux) echo "Platform: Linux" | systemd-cat -t workbuddy ;;
  *) echo "Unknown WB_PLATFORM: $WB_PLATFORM" ;;
esac

3、保存指令并勾选“允许手机端调用”。

4、在手机App中执行该指令,观察不同平台下的输出差异。

四、结合文件系统路径特征动态适配

当无法依赖环境变量或Python时,可通过探测典型路径是否存在来间接识别系统,该方法兼容旧版WorkBuddy(v3.2.0+),不依赖外部工具链。

1、在WorkBuddy中新增Shell指令,命名为“路径特征检测”。

2、命令栏填入以下逻辑:

if [ -d "/Applications" ] && [ -f "/usr/bin/sw_vers" ]; then
  echo "macOS confirmed";
elif [ -d "/proc" ] && [ -f "/etc/os-release" ]; then
  echo "Linux confirmed";
elif [ -d "C:/Windows" ] || [ -n "$WINDIR" ]; then
  echo "Windows confirmed";
else
  echo "Fallback detection failed";
fi

3、注意:该方法在Windows子系统(WSL)中可能误判为Linux,如需区分,应追加uname -r | grep -q microsoft判断。

4、保存后从手机端触发执行。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

操作系统 workbuddy

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
视频服务器配置参数有哪些
视频服务器配置参数有哪些

视频服务器配置参数有处理器、内存、存储、视频编解码器、网络接口、视频输入输出接口、操作系统、安全性、环境适应性和成本。在搭建视频服务器时,需要根据实际需求和预算,合理选择这些参数,以实现高性能、高稳定性和低成本的目标。

2023.10.17

4100

11

linux的操作系统介绍
linux的操作系统介绍

Linux是一个灵活、稳定、安全的操作系统,适用于各种不同的应用场景,从个人电脑到服务器和嵌入式系统。想了解更多Linux的相关内容,可以阅读本专题下面的文章。

2024.03.20

3266

12

Linux操作系统的主要用途
Linux操作系统的主要用途

Linux操作系统用途广泛,包括:服务器运营,软件开发,科学研究和教育,嵌入式系统,以及个人电脑和笔记本电脑。想了解更多Linux的相关内容,可以阅读本专题下面的文章。

2024.03.21

5539

8

linux操作系统的作用
linux操作系统的作用

linux操作系统在以下领域发挥着关键作用:服务器和云计算;嵌入式系统;个人电脑和笔记本电脑;超级计算;其他领域等等。想了解更多linux操作系统的相关内容,可以阅读本专题下面的文章。

2024.04.12

2615

5

有哪些常见的网络操作系统
有哪些常见的网络操作系统

常见的网络操作系统有windows server、linux、unix、macos server、freebsd、cisco ios、juniper junos和hp-ux等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2024.09.12

3164

6

32位操作系统怎么改成62位的
32位操作系统怎么改成62位的

要将 32 位操作系统升级到 64 位,需要遵循以下步骤:1. 检查硬件和软件兼容性;2. 备份数据;3. 获取 64 位操作系统;4. 创建可启动安装媒体;5. 从安装媒体启动计算机;6. 选择“升级”选项;7. 完成安装。

2025.04.02

3303

9

视频服务器配置参数有哪些
视频服务器配置参数有哪些

视频服务器配置参数有处理器、内存、存储、视频编解码器、网络接口、视频输入输出接口、操作系统、安全性、环境适应性和成本。在搭建视频服务器时,需要根据实际需求和预算,合理选择这些参数,以实现高性能、高稳定性和低成本的目标。

2023.10.17

4100

11

linux的操作系统介绍
linux的操作系统介绍

Linux是一个灵活、稳定、安全的操作系统,适用于各种不同的应用场景,从个人电脑到服务器和嵌入式系统。想了解更多Linux的相关内容,可以阅读本专题下面的文章。

2024.03.20

3266

12

Linux操作系统的主要用途
Linux操作系统的主要用途

Linux操作系统用途广泛,包括:服务器运营,软件开发,科学研究和教育,嵌入式系统,以及个人电脑和笔记本电脑。想了解更多Linux的相关内容,可以阅读本专题下面的文章。

2024.03.21

5539

8

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习

ubuntu官方总文档
ubuntu官方总文档

共0课时 | 0人学习

PostgreSQL 教程
PostgreSQL 教程

共48课时 | 20.3万人学习