问题标签 [until-loop]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
60 浏览

linux - 直到循环 - 为什么当条件为真时它仍然有效

Linux:红帽企业 Linux 服务器 6.5 版(圣地亚哥)

BASH:GNU bash,版本 4.1.2(1)-release (x86_64-redhat-linux-gnu)

我刚刚配置的 VM 之一仍在等待 DNS 更新它的节点条目,并且一个节点有一个安装在/project_support文件夹中的 NAS。/project_support访问文件夹大约需要 5-10 分钟,我知道是的

对于我的自动化不会因为这个问题而中断并且我不想添加一个常量sleep NNN,我使用until了循环,以便在安装挂载并且/project_support文件夹可用之前,我想睡 5 秒钟并检查文件夹是否存在,然后再继续在自动化脚本/逻辑中。

当对给定文件夹的命令成功(即退出状态)时,为什么第一个until循环仍在继续并且不退出条件检查?cd0第二个直到按预期工作。

对于第二个直到循环,即使我创建了文件夹(从第二个终端,直到循环正在运行),它仍然不会中断直到循环。

为什么当我这样做时这个问题得到解决:?

0 投票
1 回答
236 浏览

ruby - Ruby直到循环:nil的未定义方法`[]':NilClass(NoMethodError)

注意:我是 Ruby 的新手。

问题:如何让 print3 使用 until 循环打印出数组?这可能比我意识到的更简单,但我花了好几个小时试图解决以下问题。我能找到的只是'简单'直到循环示例。

我有一个方法(print3),我特别需要使用直到循环。print3 从 input_students 方法中提取一个数组。两种方法都在下面。

我在 irb 中得到以下信息 - directory.rb:30:in ``print3``: undefined method[]for nil:NilClass (NoMethodError). 第 30 行是指

我的代码:

感谢您的任何帮助,您可以提供。

0 投票
1 回答
323 浏览

json - 在json中递归解析并使用ansible获取值

我需要从 ansible play 中获取 json 中 key 的值。这里的问题是 - 不确定关键将是 Json 的特定级别。它可能因json而异。所以,我需要盲目地“搜索”json中的键并获取它们的值[不确定有多少键可用以及它们可用的深度]。在这里,我给出了示例 json 并发挥了作用。

JSON数据:

从上面的 json 我需要读取“补救”值。但不确定它们始终可用的级别。

这是相同的ansible脚本。

until我知道json格式的情况下,我已经遍历了json。但是,并非所有情况都相同。因此,请帮助遍历以key:value从 json 进行搜索,无论其级别如何。

0 投票
2 回答
53 浏览

linux - 直到循环没有终止或保持递增变量的值

为什么这个循环没有中断(由于if语句而结束)或使用新增加的$c变量值?尝试使用和不使用双引号的c=expr $c + 1 。"

或者

输出是无限的:我不得不 ^c 它。

0 投票
1 回答
2308 浏览

ansible - 来自 Jira API 的 Ansible “直到”响应

我试图安排一个 ansible playbook 来重新索引 Jira,我也希望我们的开发人员能够临时启动这个,他们可以通过 AWX 来做,我可以开始重新索引但是重新索引完成时希望收到通知。

这是我的 CLI 命令和输出:

我的剧本:

我希望第二部分重试直到成功 == true,此时 AWX 可以发送通知电子邮件。手动运行 playbook 将启动重新索引,但即使重新索引已完成,重试也会重试

0 投票
0 回答
140 浏览

unix - UNIX - 直到循环条件需要字符串中的整数?

所以,我有一些代码应该在我开始修补服务器之前检查预检查序列是否已经完成。我通过使用 until 循环来执行此操作,并且作为条件,我将标志设置为 true。当标志设置为 false 时,这意味着预检查已完成,我现在可以退出直到循环。

问题是我陷入了无限循环,并且收到一条错误消息,提示 [: true: integer expression expected

我不断地调用一个 URL 来进行我的检查,它会返回一个我保存的文件。从该文件中提取的示例是:

我需要从中提取的部分是来自 inProgress 字段的值(可以是“真”或“假”)。然后我使用这个值与我的标志进行比较。所以我从 inProgress 字段中提取值。

导致我出现问题的代码部分如下:

这是我用错误消息点击无限循环的地方,说 [: true: integer expression expected。(我从来没有看到“预检查完成消息”)

但我不明白为什么它会期待一个整数?当然字符串比较就足够了吗?

inProgress 字段中的值 true 未封装在双引号中这一事实是否重要?

任何帮助都将受到极大的欢迎。

0 投票
1 回答
2263 浏览

regex - Ansible until 循环在条件语句中使用正则表达式

我需要在直到循环中使用正则表达式模式检查命令标准输出。当我使用 regex_search 显示调试消息时,一切正常:

消息是

但是,如果我尝试在内部使用该构造,直到条件语句任务因语法错误而失败。

当我只是将完整字符串复制并粘贴{{k_output.stdout | regex_search(node_hostname | string + '\\s+Ready')}}到直到条件语句时,没有 set_fact 的相同行为。那么,我怎样才能使用 regex_search 或适合这种情况的东西,直到?

0 投票
1 回答
39 浏览

bash - 直到循环条件满足时不执行命令

所以我有一个直到循环,然后我一旦满足直到循环的条件,我希望循环停止并继续沿命令行向下。我使用 PBS 提交了一些作业(也写入脚本)。.com 文件是输入,.log 是输出。目前,调用每个文件的数量彼此相等并因此结束循环似乎存在问题。

$direct 设置为工作目录

我从几个观察中知道这一点:

1)我在超级计算机上查看时睡眠过程仍在运行

2)当我检查队列时,所有作业都已完成

3)在脚本的后面,我要求它发送一封电子邮件,但这并没有发生

这是我第一次使用 until 循环和 sleep 命令,所以我想知道我的语法是否有问题。如果我无法解决这个直到循环,理论上我可以用 if/then 循环做同样的事情,但从我所看到的情况来看,直到循环应该更有效。

这是我正在编写的导致我出现问题的代码的一小部分。完成生成 .log 文件的作业可能需要一个多小时,所以我不需要很短的睡眠时间。

0 投票
0 回答
73 浏览

bash - 直到循环不起作用,脚本继续

我有一个脚本可以在作业完成时生成一个 .log 文件。我不希望它继续前进,直到 .log 文件的数量等于 .com 文件的数量。目前,如果我执行此脚本,它将启动循环,然后立即跳过实际循环并继续执行脚本。

根据我从阅读中收集到的信息,这个脚本没有理由不工作。它应该在循环中被捕获,直到这两个值彼此相等。

$direct 是工作目录

我得到的是它提交作业(它被编码到未显示的脚本的一部分),启动循环(当我查看进程列表时我可以看到睡眠命令),然后尝试执行显示的部分脚本只是发现没有 .out 文件(一旦作业开始在我使用的超级计算机上运行就会创建),然后继续执行脚本。

我被要求用 -x 运行它。我不知道我在找什么,所以这里是涉及循环的部分:

0 投票
1 回答
44 浏览

winforms - 在 PowerShell 表单中与 Get-Random 和鼠标单击相结合的直到循环中挣扎

我正在努力解决直到循环与随机选择器和 PowerShell 表单中的鼠标单击相结合的问题。

我可以在没有表单的情况下运行随机选择器,在该表单中,我有工作日,随机选择,并且一天一天地被删除,直到 arraylist 为空。工作还不错。

在另一种方法中,我尝试做同样的事情,但是这一次,我想控制循环本身,只要从 arraylist 中获取第一个键并显示在标签中,我就必须单击鼠标按钮,所以它继续随机取下一个。

没有do {} until ()我到目前为止:

现在我还剩下几行代码,我无法以这种方式包含,所以它按以下方式工作。

测试表打开,在我看到的一个标签中随机选择一个工作日。单击下一步将从 arraylist 中删除所选的工作日并随机显示下一个工作日,并将一直持续到 arraylist 为空。

拼图缺少的部分是:

我正在玩代码并尝试使用Button.Add_Click()ButtonClickEvent {}但要么循环没有运行,计数器工作不正常,要么我以某种方式弄乱了代码,它卡在某个地方,甚至没有表格正在显示。