我有以下代码:
$srv_range = 29..30+40+50..52
$srv_range.GetType()
$NewVMTemplate = New-Object psobject
$NewVMTemplate | Add-Member -MemberType NoteProperty -Name Name -Value $null
$srv_range | % {
$pod= $_
$servers = @()
1..2 | % {
$server = $NewVMTemplate | Select-Object *
$server.Name = "pod" + "{0:D2}" -f $pod + "-srv" + $_
$servers += $server
}
ForEach ( $server in $servers) {
write-host $server.Name
}
}
Run Code Online (Sandbox Code Playgroud)
输出:
PowerCLI C:\ .\eraseme.ps1
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True Object[] System.Array
pod29-srv1
pod29-srv2 …Run Code Online (Sandbox Code Playgroud)
$npp = "C:\Program Files\Notepad++\notepad++.exe";
$myfiles = @(
"C:\bad boys\file1.txt",
"C:\bad boys\file2.txt",
"C:\bad boys\file3.txt"
)
foreach ($file in $myfiles) {
Start-Process -FilePath $npp -ArgumentList "$file" -PassThru -NoNewWindow | out-null
}
Run Code Online (Sandbox Code Playgroud)
这几乎有效...除了,它不会在记事本++中打开,因为它看到文件名中的空格并认为这是文件路径结束的地方...因此,我无法打开我的文件列表。有什么想法如何解决吗?相反,我得到的是 notepad++ 多次询问我是否要创建文件“C:\bad”