有人可以帮我解释一下这里发生了什么吗?抱歉,如果这是一个基本问题, 我从我正在尝试编写的管道表达式中简化了它:

$foo = pwd 
$cmd = "dir" 
 
& $cmd $foo #Works 
 
dir $foo  #Works 
 
& "dir $foo" #Error 

*术语“dir C:\”未被识别为 cmdlet、函数、可运行程序或脚本文件。验证术语并重试。

在行:1 字符:2 + & <<<< "dir $foo"*

dir pwd #Error 

*Get-ChildItem:找不到路径“C:\pwd”,因为它不存在。

第 1 行字符:4 + 目录 <<<< 密码*

我希望所有这四个都产生相同的结果

请您参考如下方法:

引号中的表达式被解释为单个参数。在第三条命令中,shell 将其解释为对不带参数的命令“dir C:\”的请求,而不是对命令“dir”的请求参数为“C:\”。


评论关闭
IT序号网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!