SuperAPI AI 工具集

powershell-shell-detection

通用与其它

查看项目

更新于 10-15 23:41

技能介绍

用途:在 Windows 上正确识别脚本运行于 PowerShell、Git Bash/MSYS2 还是 WSL,并据此处理路径与命令,避免跨 shell 兼容性问题。

主要能力:给出检测优先级(process.env.PSModulePath、process.env.MSYSTEM、process.env.WSL_DISTRO_NAME、uname -s);列出 PowerShell 专有变量($PSVersionTable、$PSScriptRoot、$PSCommandPath、$IsWindows 等)与 Git Bash 的 MSYSTEM 取值(MINGW64、MINGW32、MSYS);对比环境变量写法、路径分隔符、路径风格、家目录与临时目录差异;说明 Git Bash 自动路径转换的触发条件与豁免情况,以及用 MSYS_NO_PATHCONV=1、MSYS2_ARG_CONV_EXCL 关闭转换;提供 cygpath 转换路径的用法。

使用方式:在脚本开头加入 shell 检测逻辑,PowerShell 用 $PSVersionTable 或 PSModulePath 判断,Bash 用 $MSYSTEM 或 uname 判断;路径处理上 PowerShell 用 Join-Path 或 [IO.Path]::Combine(),Git Bash 用 Unix 风格路径并在调用 Windows 工具时用 cygpath 转换。

适用场景:Windows 上的跨 shell 脚本开发、CI/CD、Git 工作流、文本处理与进程管理脚本。

限制:资料未提供该技能的安装命令、收费方式与具体平台支持范围;内容主要面向 Windows 环境,其他平台仅作参考。