我的脚本的一部分如下所示:
move-item -path $_.FullName+"\*.7z" -destination "$destination"
它返回错误:
但是,如果我将该变量更改为精确值,则可以:
move-item -path "D:\test1\test2\test3\test4\*.7z" -destination "$destination"
问题是什么?
最佳答案
要将表达式用作命令行的一部分(在参数模式下进行解析),您必须使用(...)
强制使用新的解析上下文:
Move-Item -path ($_.FullName+"\*.7z") -destination "$destination"
参见
Get-Help about_Parsing
。在这种情况下,假设表达式正在构造一个字符串值,则使用具有嵌入式子表达式(
$(...)
)的可扩展(插值)字符串是可行的选择,如Ben Richard's answer所示。关于powershell - 移动项路径作为变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44144587/