我有一个PowerShell脚本,用于自动在SAN上创建卷。该脚本提示用户输入相关信息:卷数,卷大小和命名模式。接下来,它应该在阵列上运行命令以使用提供的信息创建卷。这是我被困的地方。现在,脚本要求用户指定要创建的卷数。例如,假设用户输入数字4.我坚持如何取4并使其成为数组1,2,3,4或7到1,2,3,4,5,6,7。也许有更简单的方法通过计数或其他功能来做到这一点。我是脚本新手,所以非常感谢任何帮助。
# Define the number of volumes to create
$num_vols = read-host "Please enter the number of volumes"
# Define naming pattern
$vol_name = read-host "Please enter the volume naming pattern"
我想要做的是创建一个基本上运行的函数:
# Run command to create volumes on array
foreach ($i in $num_vols){
& "command to execute" $vol_name + $i
}
感谢您的建议。我现在正在使用:
# Run command to create volumes on array
foreach ($i in 1..$num_vols){
& "command to execute" $vol_name"."$i
}
完美的作品!我现在可以创建名为VolName.1,VolName.2等的X卷,其中X是用户输入的卷数。
答案 0 :(得分:2)
您可以使用范围运算符(..
):
foreach ($i in 1..$num_vols) { ... }
或者像这样的范围运算符:
1..$num_vols | ForEach-Object { ... }
或者您可以使用传统的for
循环:
for ($i = 0; $i -lt $num_vols; $i++) { ... }