如何修改PowerShell函数d,支持将-Config转为Doppler的--config?
调整PowerShell Doppler快捷命令的参数转换逻辑
你可以通过修改函数,解析并转换-Config参数的格式和位置,实现需求。以下是修改后的函数:
function d { [CmdletBinding()] param( [Parameter()] [string]$Config, [Parameter(ValueFromRemainingArguments=$true)] [string[]]$CommandArgs ) $dopplerParams = @() # 如果传入了Config参数,转换成Doppler要求的--config格式 if ($PSBoundParameters.ContainsKey('Config')) { $dopplerParams += '--config', $Config } # 添加分隔符--,然后追加用户要执行的命令及参数 $dopplerParams += '--' $dopplerParams += $CommandArgs # 执行最终的Doppler命令 doppler run $dopplerParams }
说明
- 函数通过参数绑定机制,单独捕获
-Config参数,将其转换为Doppler要求的--config格式,并放在--分隔符之前。 - 剩余的所有参数会被作为用户要执行的命令(比如
npm start),放在--之后。 - 支持两种调用方式:
- 带配置:
d -Config dev npm run build→ 实际执行doppler run --config dev -- npm run build - 不带配置:
d python app.py→ 和原函数一致,执行doppler run -- python app.py
- 带配置:
内容的提问来源于stack exchange,提问作者Simon Berens
相关产品推荐
相关产品推荐

