这里是做在PowerShell中的一种方式:
首先,你将与驱动器盘符的数组。通过包装在引号或双引号中,每个字母将是一个字符串,然后使用逗号分隔每个值,以便该变量将是一个字符串数组。
$Drives = "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"
然后使用foreach
循环,循环遍历每个数组的值。
foreach ($Drive in $Drives) {
然后使用if
语句测试,以及if
里面,你可以测试一个文件夹或文件与Test-Path
cmdlet的存在。 ${}
是这样的,我可以把变量放在引号内,并且它都是一个字符串,而不会让解析器被:
弄糊涂。或者,您可以构建连接路径Test-Path $($Drive + ":\win10.wim")
其中$()
是首先要评估的子表达式,然后+
运算符将连接两个字符串。
if (Test-Path "${Drive}:\Win10.wim") {
最后,你可以设置一个变量等于$Drive
变量时if
语句成功
$WIMLocation = $Drive
}
}
这里是什么样子干脆:
$Drives = "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"
foreach ($Drive in $Drives) {
if (Test-Path "${Drive}:\Win10.wim") {
$WIMLocation = $Drive
}
}
不同于其他网站,所以宁愿不如果事情回答你的问题已经创建一个新的线程。这就是说有一个单独的问题有足够的不同。例如你想保存一个新的变量,并且该数组没有包含':',这有一个棘手的问题,因为':'是用于范围的。 – BenH