求Bash脚本:Mosyle管理Mac时Sophos Endpoint安装前置检查
解决方案:添加Sophos Endpoint安装前置检查的Bash脚本
核心检查逻辑
通过检测/Applications目录下的Sophos主程序目录是否存在,来判断是否已完成安装。Mac上的.app应用本质是目录,用[[ -d ]]即可完成可靠判断。
完整脚本示例
将检查逻辑与你已有的安装流程整合,脚本如下:
#!/bin/bash # 定义Sophos应用的完整路径 SOPHOS_APP="/Applications/Sophos Endpoint.app" # 前置检查:判断是否已安装Sophos if [[ -d "$SOPHOS_APP" ]]; then echo "Sophos Endpoint已安装,脚本退出" exit 0 fi # 以下替换为你已有的下载安装代码 echo "未检测到Sophos Endpoint,启动安装流程..." # 示例安装流程(根据你的实际脚本修改): # curl -L -o /tmp/SophosInstaller.pkg "你的Sophos安装包下载地址" # sudo installer -pkg /tmp/SophosInstaller.pkg -target / # rm -f /tmp/SophosInstaller.pkg echo "安装流程执行完毕"
关键细节说明
[[ -d "$SOPHOS_APP" ]]:准确判断目标应用是否存在,避免误判孤立文件或损坏的.app包exit 0:正常退出脚本,不会触发后续安装步骤- 无需改动原有安装代码,仅在开头添加检查逻辑即可无缝整合
Mosyle配置提示
在Mosyle中设置脚本每日周期性执行时,确保脚本权限设为755,MDM会自动以root权限运行,无需额外配置sudo(若你的安装脚本已有sudo可保留)。
内容的提问来源于stack exchange,提问作者user21327554
相关产品推荐
相关产品推荐

