Fastlane 和 Powershell 双因素身份验证
Fastlane & Powershell two factor authentication
运行 Powershell 中的 fastlane 并尝试获取由 fastlane.
设置的环境变量
我有以下代码,我试图用它来获取变量,但是 FASTLANE_SESSION
在循环后是空的 - 这就是为什么我尝试自己设置一个 env
循环:
fastlane spaceauth -u user@domain.com 2>&1 | ForEach-Object {
Write-Host $env:FASTLANE_SESSION
return $_
}
有解决这个问题的想法吗?
如果 fastlane
输出的最后一行为空,例如换行符,这就是您得到的结果。没有 fastlane
,因此使用 java
进行了测试。首先测试 [string]
就像你的例子:
java -version 2>&1 | foreach { if ($_ -is [string]) { return $_; } } | select -Last 1;
无输出。
非空白字符的第二次测试:
java -version 2>&1 | where { $_ -match '\S+' } | select -Last 1;
输出当前安装的版本。
对于您的具体示例,这样的事情应该有效:
$OUTPUT = fastlane spaceauth -u email@adomain.com 2>&1 |
where { $_ -match '\S+' } |
select -Last 1;
运行 Powershell 中的 fastlane 并尝试获取由 fastlane.
设置的环境变量我有以下代码,我试图用它来获取变量,但是 FASTLANE_SESSION
在循环后是空的 - 这就是为什么我尝试自己设置一个 env
循环:
fastlane spaceauth -u user@domain.com 2>&1 | ForEach-Object {
Write-Host $env:FASTLANE_SESSION
return $_
}
有解决这个问题的想法吗?
如果 fastlane
输出的最后一行为空,例如换行符,这就是您得到的结果。没有 fastlane
,因此使用 java
进行了测试。首先测试 [string]
就像你的例子:
java -version 2>&1 | foreach { if ($_ -is [string]) { return $_; } } | select -Last 1;
无输出。
非空白字符的第二次测试:
java -version 2>&1 | where { $_ -match '\S+' } | select -Last 1;
输出当前安装的版本。
对于您的具体示例,这样的事情应该有效:
$OUTPUT = fastlane spaceauth -u email@adomain.com 2>&1 |
where { $_ -match '\S+' } |
select -Last 1;