gpt4 book ai didi

c# - Powershell for 循环(来自 c#)

转载 作者:行者123 更新时间:2023-12-01 19:42:34 24 4
gpt4 key购买 nike

我正在将我的 C# 程序转移到 Powershell,但我一直在尝试转换我正在工作的 for 循环。我不知道如何安静地表达这一点,但我在 for 循环中需要多个计数器变量,而且我一直无法弄清楚如何做到这一点。我在网上也找不到任何引用资料,所以我不知道这是否是Powershell的限制。

所以,这就是我的意思,在 C# 中我有:

  for (int k = 1, file = 1, perFile = 0; k <= splitGroups; k++, file++, perFile += dtotalPerFile){

}

当然,变量名称/类型并不重要,所以我的问题是如何将其重建到 Powershell 中?可以使用For循环吗?或者我是否需要花一段时间才能达到相同的结果。

最佳答案

PowerShell 的 for 循环可以做到这一点,但语法可能有点尴尬。

您需要将 for 循环的每个“部分”的多个语句包装在 $() 中,因此它看起来像这样:

for ( $($k = 1 ; $file = 1 ; $perFile = 0) ; $k -le $splitGroups; $( $k++ ; $file++ ; $perFile += $dtotalPerFile) ) {
# stuff
}

for 循环确实允许使用换行符而不是分号,子表达式也允许使用换行符,因此您可以稍微清理一下:

for ( 
$(
$k = 1
$file = 1
$perFile = 0
)
$k -lt $splitGroups
$(
$k++
$file++
$perFile += $dtotalPerFile
)
) {
# stuff
}

不过还是有点乱。

有效的概念验证(因为我们没有您的变量):

for (
$(
$a = 0
$b = 10
)
$a -lt 10
$(
$a++
$b += 10
)
) {
"$a~$b"
}

关于c# - Powershell for 循环(来自 c#),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33838195/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com