Powershell 变量路径中的通配符
Wildcards in variable path with Powershell
我想在我的脚本中像这样在变量中使用通配符:
$TARGET = "\MACHINE1\c$\ProgramData\Test.*\Data\"
问题是 $TARGET returns
\MACHINE1\c$\ProgramData\Test.*\Data\
而不是
\MACHINE1\c$\ProgramData\Test.1.1.1\Data\
但是
Test-Path "\MACHINE1\c$\ProgramData\Test.*\Data\"
=> TRUE
感谢您的帮助
您应该使用 Get-ChildItem
来检索真实路径:
$TARGET = "\MACHINE1\c$\ProgramData\Test.*\Data\"
Get-ChildItem $Target
Directory: \MACHINE1\c$\ProgramData\Test.1.1.1
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 10-10-2014 12:48 data
IMO 在这种情况下最好使用 Resolve-Path,
$TARGET = Resolve-Path "\MACHINE1\c$\ProgramData\Test.*\Data\" | Select -ExpandProperty Path
我想在我的脚本中像这样在变量中使用通配符:
$TARGET = "\MACHINE1\c$\ProgramData\Test.*\Data\"
问题是 $TARGET returns
\MACHINE1\c$\ProgramData\Test.*\Data\
而不是
\MACHINE1\c$\ProgramData\Test.1.1.1\Data\
但是
Test-Path "\MACHINE1\c$\ProgramData\Test.*\Data\"
=> TRUE
感谢您的帮助
您应该使用 Get-ChildItem
来检索真实路径:
$TARGET = "\MACHINE1\c$\ProgramData\Test.*\Data\"
Get-ChildItem $Target
Directory: \MACHINE1\c$\ProgramData\Test.1.1.1
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 10-10-2014 12:48 data
IMO 在这种情况下最好使用 Resolve-Path,
$TARGET = Resolve-Path "\MACHINE1\c$\ProgramData\Test.*\Data\" | Select -ExpandProperty Path