有人可以帮我解释一下这里发生了什么吗?很抱歉,如果这是一个基本问题,我将其从我正在尝试编写的管道表达式中简化:
$foo = pwd
$cmd = "dir"
& $cmd $foo #Works
dir $foo #Works
& "dir $foo" #Error
Run Code Online (Sandbox Code Playgroud)
*术语'dir C:\'不被识别为cmdlet,函数,可操作程序或脚本文件.验证该术语,然后重试.
在行:1 char:2 +&<<<<"dir $ foo"*
dir pwd #Error
Run Code Online (Sandbox Code Playgroud)
*Get-ChildItem:找不到路径'C:\ pwd',因为它不存在.
在行:1 char:4 + dir <<<< pwd*
我希望所有这四个产生相同的结果
如果要"执行"包含任意脚本的字符串,请使用Invoke-Expression cmdlet,例如:
Invoke-Expression"dir $ foo"
| 归档时间: |
|
| 查看次数: |
1438 次 |
| 最近记录: |