PowerShell MethodNotFound,Microsoft.PowerShell.Commands.ForeachObjectCommand

PowerShell MethodNotFound,Microsoft.PowerShell.Commands.ForeachObjectCommand,powershell,Powershell,我正在尝试执行以下操作: Get-ChildItem[DIR]-包括[FILETYPE]-递归| foreach($41;{Remove Item$41;.fullname-WhatIf} 要在函数中运行: 函数funcNameHere(){ Get-ChildItem[DIR]-包括[FILETYPE]-递归| foreach($41;{Remove Item$41;.fullname-WhatIf} } 如果我在脚本的主要部分运行这段代码,它将毫无问题地运行,但是如果我尝试将其放入函

我正在尝试执行以下操作:

Get-ChildItem[DIR]-包括[FILETYPE]-递归| foreach($41;{Remove Item$41;.fullname-WhatIf}

要在函数中运行:

函数funcNameHere(){
Get-ChildItem[DIR]-包括[FILETYPE]-递归| foreach($41;{Remove Item$41;.fullname-WhatIf}
}

如果我在脚本的主要部分运行这段代码,它将毫无问题地运行,但是如果我尝试将其放入函数中,它将返回错误:

foreach:无法将输入名称“1”解析为方法。
在[脚本]:##字符:##
foreach到最后一个大括号用波浪线加下划线。
+CategoryInfo无效参数([script]:PSObject)[ForEach对象],PSArgumentException
+FullyQualifiedErrorId:MethodNotFound,Microsoft.Powershell.Commands.ForeachObjectCommand

我无法在谷歌上找到这个错误的任何东西,任何帮助将不胜感激

是,[DIR]和[FILETYPE]是正常定义的


提前感谢。

您似乎将
foreach
语句与
foreach对象
cmdlet混淆了(后者别名为
foreach
,这可能会导致混淆)。不要将
($)
ForEach对象
cmdlet一起使用-传递给它的脚本块
{…}
将自动定义
$
。此外,考虑提供一个和请。谢谢你的帮助,工作就好了。