PowerShell:打破嵌套循环

2023-12-21

应该有一个breakPowerShell 中的命令可以通过分配标签退出嵌套循环。只是它不起作用。这是我的代码:

$timestampServers = @(
    "http://timestamp.verisign.com/scripts/timstamp.dll",
    "http://timestamp.comodoca.com/authenticode",
    "http://timestamp.globalsign.com/scripts/timstamp.dll",
    "http://www.startssl.com/timestamp"
)

:outer for ($retry = 2; $retry -gt 0; $retry--)
{
    Write-Host retry $retry
    foreach ($timestampServer in $timestampServers)
    {
        Write-Host timestampServer $timestampServer
        & $signtoolBin sign /f $keyFile /p "$password" /t $timestampServer $file
        if ($?)
        {
            Write-Host OK
            break :outer
        }
    }
}
if ($retry -eq 0)
{
    WaitError "Digitally signing failed"
    exit 1
}

它打印以下内容:

retry 2
timestampServer http://timestamp.verisign.com/scripts/timstamp.dll
Done Adding Additional Store
Successfully signed and timestamped: C:\myfile.dll
OK
retry 1
timestampServer http://timestamp.verisign.com/scripts/timstamp.dll
Done Adding Additional Store
Successfully signed and timestamped: C:\myfile.dll
OK

ERROR: Digitally signing failed

我做错了什么?

请问可以给我 goto 和标签吗?

使用 Windows 7,我猜是 PS 2.0。该脚本至少应该在 PS 2 上运行。


使用时不添加冒号break带有循环标签。这行:

break :outer

应该这样写:

break outer

为了进一步演示,请考虑这个简单的脚本:

:loop while ($true)
{
    while ($true)
    {
        break :loop
    }
}

执行后,它将永远运行而不会中断。然而这个脚本:

:loop while ($true)
{
    while ($true)
    {
        break loop
    }
}

因为我改变了所以应该退出break :loop to break loop.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PowerShell:打破嵌套循环 的相关文章

  • Azure Runbook 输出到电子邮件

    我正在尝试将 VM 状态的输出从 Azure 自动化 Runbook 发送到电子邮件中 我使用以下代码 function Send EMail Param Parameter Mandatory true String EmailTo Pa
  • 在powershell中,如何获得用于调用函数的确切原始命令?

    有什么东西在 MyInvocation是这样的吗 或者有什么办法可以提取出来 我想要函数调用中用于参数的原始文本 使用时有一些注意事项 myinvocation line or myinvocation position 如果您将命令的调用
  • 具有特殊AssignableScopes的Azure自定义RM角色定义

    我正在尝试创建一个自定义 Azure RM 角色定义 其范围适用于一个订阅内的某些资源组 我不想提供对所有订阅或仅一个资源组的访问权限 并且我无法指定资源组列表 因为其中一些资源组尚未创建 我只想提供订阅资源组的某些子集的访问权限 为此 我
  • 在循环中调用 setTimeout 未按预期工作

    下面的 JavaScript 应该 在我看来 以 0 5 秒的间隔播放一系列音符 但它会将它们全部作为一个同时的和弦来演奏 知道如何修复它吗 function playRecording if notes length gt 0 for v
  • 阻止单引号在 WMI 查询 powershell 中转义字符串

    我有一些使用 WMI 查询的代码 但我遇到了一个问题 我使用的变量有一个 单引号 这会导致代码出现故障 这是一个例子 path SERVER1 Mike O Leary servername path Split 2 Split 0 sha
  • 运行多个 powershell 命令

    我如何运行前导命令 例如set adserversettings当我在 C 中调用 powershell 命令时 现在它返回 0 个结果 这是我正在使用的代码 Command command1 new Command set adserve
  • Java 增强型 For-Loop 比传统的更快?

    所以我的理解是 增强的 for 循环应该更慢 因为它们必须使用迭代器 但是我的代码提供了混合结果 是的 我知道循环逻辑占用了循环中花费的大部分时间 对于少量迭代 100 1000 增强的 for 循环在使用和不使用 JIT 的情况下似乎都要
  • cmd中哪个符号是转义符?

    我有这个代码 powershell command New Object Net WebClient DownloadFile linkToMyFile file C my file 它用于下载文件 当我在远程服务器上的 cmd 中执行它时
  • 根据同一 select 语句中先前计算的行(或列)计算新行(或列)

    我正在尝试根据年度销售增长预期来计算年度预期销售量 在一张表中 我有实际销量 create table Sales ProductId int Year int GrowthRate float insert into Sales valu
  • 使用 Powershell 或 C# 获取 Azure“文件和文件夹”作业状态

    我一直在尝试找到一种方法来获取在 AzureRM 中运行的几个客户上运行的 文件和文件夹 备份作业的状态 可以在 AzureRm 门户中手动找到状态 恢复服务保管库 gt 作业 gt 备份作业 使用powershell不显示任何作业信息 G
  • 在 Mule 3.4 中模拟 while 循环

    我需要在 Mule Flow 中使用 while 循环来从自定义 DAO 中加载数据块 我使用表达式转换器来访问 DAO 直到他不再提供任何项目 我不知道 DAO 提供的项目总量 Mule 3 4 中没有内置 while 循环 我的第一个想
  • 浏览多个字段的值并将它们插入到同一列中

    我正在尝试使用重复行为我的 oracle apex 应用程序创建一个功能 假设我有一个车辆表 CREATE TABLE vehicles brand VARCHAR2 50 model VARCHAR2 50 comment VARCHAR
  • PowerShell 输出在函数之间交叉

    我正在 Windows 10 上的 5 1 版本中编写一个 PowerShell 脚本 该脚本获取有关本地系统 以及最终其子网 的某些信息并将其输出到文本文件中 起初 我将所有方面都集中在一个函数中 我在输出时遇到了输出问题getUsers
  • Powershell Invoke-SSHCommand:使用“1”个参数调用“EndExecute”时出现异常

    我正在尝试通过 powershell 中的 Posh SSH 模块连接到 Netscaler SDX 服务器 以搜索特定文件 然后下载它 如果我用 putty 连接到服务器 它就可以工作 然后我可以输入 shell 来打开普通的 bash
  • 如何在Powershell控制台中分配多行字符串

    当我在 powershell 控制台中输入此内容时 test Test Test 并且输入多次 它会一直打印 gt gt 所以我永远无法完成命令 该怎么办 应该是行中的第一件事 或者它被认为只是字符串的一部分 test Test Test
  • 通过快捷方式更改桌面的 Powershell 脚本

    关于为什么从 w in PS 运行时有效 但从定义为以下的快捷方式运行时无效的任何想法和建议 SystemRoot system32 WindowsPowerShell v1 0 powershell exe File C Users bi
  • Powershell 中的反斜杠

    为什么 split 参数的字符串需要两个反斜杠 而 join 参数的字符串只需要一个反斜杠 反引号是 Powershell 中的转义字符 字符前面的反斜杠有什么作用 path C folder test unit1 testing resu
  • 如何使用break语句停止内部和外部循环[重复]

    这个问题在这里已经有答案了 我使用的代码非常简单break内部循环 for int it 0 it lt 5 it for int it2 0 it2 lt 5 it2 if it2 2 break break here not it2 b
  • 无法在 cmd 中通过管道传递 cmdlet 对象

    我正在使用这个 powershell 命令来获取特定的用户配置文件 获取 WmiObject Class Win32 UserProfile Where Object LocalPath eq C Users Pela 但是当我通过调用 p
  • 拖放到 Powershell 脚本

    我以为我已经找到了这个问题的答案 但我玩得越多 我就越发现它是 Powershell 的设计缺陷 我想拖放 或使用发送到机制 将多个文件和 或文件夹作为数组传递到 Powershell 脚本 测试脚本 Test ps1 param stri

随机推荐

  • python time.time() 和“夏令时”

    当运行python的计算机的时钟 Windows或Linux 时会发生什么 自动更改并调用time time 我读过的价值time time 当手动将时钟更改为过去的某个值时 该值会更小 time time docs https docs
  • Delphi XE2:可以在VCL应用程序中实例化FireMonkey Form吗?

    在 Delphi XE2 之前 我们只有 VCL 来创建 GUI 应用程序 德尔福 XE2 指出 注意 FireMonkey FMX 和可视化组件库 VCL 是 不兼容且不能在同一项目中使用或 应用 也就是说 一个应用程序必须是唯一的一个或
  • 从 DateTime.Now 获取本周的天数列表

    我的自相矛盾或者可能是微不足道的问题是创建一个从今天开始的日期列表 格式为 DD MM YY 假设今天是 11 04 2015 我想创建一个从 2015 年 11 月 2 日星期一到 2015 年 11 月 8 日星期日开始的日期时间列表
  • 无法启动 Ripple 的浏览器进程

    当我在 Visual Studio 中创建新的移动应用程序时 我可以运行它并且不会发生任何问题 但是当我开始运行另一个应用程序 由其他开发人员创建并在 TFS 上共享 时 我收到以下消息 Unable to get launched bro
  • 在合金中编程递归函数

    我正在尝试在 Alloy 中构造一个递归函数 根据丹尼尔 杰克逊书中显示的语法 这是可能的 我的职能是 fun auxiliaryToAvoidCyclicRecursion idTarget MethodId m Method Metho
  • 删除 AJAX 响应中的空白

    我有一个返回的 php 脚本0 28 然后使用 AJAX 将其提取到 HTML 并插入到跨度中 问题是 它插入了 5 个空格 并且似乎是换行符 然后 jQuery 将其视为更改 并在没有更改时使用新值更新现有范围 看来空格不是来自 php
  • 在 Windows 服务器上设置 RabbitMQ 集群

    我正在尝试在 Windows 服务器上设置 RabbitMQ 集群 这需要使用共享的 Erlang cookie 文件 根据文档 我需要做的就是确保不同机器上的根目录包含相同的 erlang cookie 文件 所以我所做的就是在两台机器上
  • 序列压缩?

    最近我遇到了一个让我很困惑的问题 问题是 我想压缩一个序列 这样就不会丢失任何信息 例如 一个 一个 一个 b gt 一个 b a b a a c gt a b a a c 它不能被压缩为 a b a c 因为这样我们会丢失 a a 有什么
  • 下一页 13.4 错误:API 路由中的 NEXT_REDIRECT

    我的 app api auth route ts 文件 import redirect from next navigation export async function GET req Request try redirect dash
  • 是否可以在不初始化的情况下使用数组?

    我从 Stack Overflow 上看到了一些代码 这让我很困惑 我只是不知道是否缺少某些部分 代码如下 ch curl init captcha url curl setopt ch CURLOPT USERAGENT this gt
  • 快速提供静态文件和路由

    我正在使用express js 我的根路径是 xyz 如果路径是 xyz api 我想为我想要提供静态文件的任何其他路径提供 json 例如 xyz abc 或 xyz def bjk 等 我当前的配置如下 app use xyz path
  • JavaScript 中的 me = this 是支持缩小的好习惯吗?

    所以在我的 JavaScript 代码库中我一直在使用var me this支持缩小的习惯用法 但我最近开始质疑这一点 我想知道是否分配this使用更智能的缩小工具可以避免变量的变化吗 似乎工具应该能够检测创建变量来表示的函数this将通过
  • 将列逆透视为行(oracle)

    很像这个原来的SO在 Oracle 中动态地将行转换为列 https stackoverflow com questions 7730111 pivoting rows into columns dynamically in oracle
  • 尝试执行 google 脚本时出现 403

    我正在尝试通过 API 执行谷歌脚本 我已授权所有必要的范围 包括我的参数 函数和开发模式 POST https script googleapis com v1 scripts scriptId run devMode true func
  • 安装 Airflow 时出错:默认情况下 Airflow 的依赖项之一安装 GPL

    运行后出现如下错误pip install airflow postgres 命令 gt raise RuntimeError By default one of Airflow s dependencies installs gt a GP
  • 如何让 =NULL 在 SQLite 中工作?

    给出下表 Table Comedians Id First Middle Last 1 Bob NULL Sagat 2 Jerry Kal Seinfeld 我想做以下准备好的查询 SELECT FROM Comedians WHERE
  • 资产“application.js”不存在于资产管道中

    我是新来的Ruby and in ROR框架 我尝试使用 JQuery 创建网络应用程序 我的步骤是 添加 gem jquery rails 并执行捆绑安装来自命令行的命令 String require jquery2添加到应用程序 js
  • pandas to_sql 所有列均为 nvarchar

    我有一个动态创建的 pandas 数据框 其列名称各不相同 我试图将它们推送到 sql 但不希望它们作为默认数据类型 文本 转到 mssqlserver 任何人都可以解释为什么这是默认值吗 使用更常见的数据类型是否有意义 有谁知道如何为所有
  • Numpy:有效求和 M 的子矩阵 m [重复]

    这个问题在这里已经有答案了 如果我知道每个方子矩阵 m 2x2 的维数 并且大方阵 M 的维数可以被维数 m 整除 M modulo m 0 有没有一种有效的方法来求和以下矩阵 M M array 1 1 1 1 1 1 1 1 1 1 1
  • PowerShell:打破嵌套循环

    应该有一个breakPowerShell 中的命令可以通过分配标签退出嵌套循环 只是它不起作用 这是我的代码 timestampServers http timestamp verisign com scripts timstamp dll