我想在我的脚本中使用变量中的通配符,如下所示:
$TARGET = "\\MACHINE1\c$\ProgramData\Test\12.*\Data\"
问题是$ TARGET返回
\\MACHINE1\c$\ProgramData\Test\12.*\Data\
而不是
\\MACHINE1\c$\ProgramData\Test\12.1.1.1\Data\
然而
Test-Path "\\MACHINE1\c$\ProgramData\Test\12.*\Data\"
=> TRUE
感谢您的帮助
答案 0 :(得分:3)
您应该使用Get-ChildItem
来检索真实路径:
$TARGET = "\\MACHINE1\c$\ProgramData\Test\12.*\Data\"
Get-ChildItem $Target
Directory: \\MACHINE1\c$\ProgramData\Test\12.1.1.1
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 10-10-2014 12:48 data
答案 1 :(得分:3)
在这种情况下,IMO正在使用Resolve-Path,
$TARGET = Resolve-Path "\\MACHINE1\c$\ProgramData\Test\12.*\Data\" | Select -ExpandProperty Path