Não tenho certeza do que você está tentando com o objeto de grupo aqui, pelo que você explicou que não é necessário. Conforme escrito, você também precisa lembrar que o diretório atual pode não ser c:\test
, então você precisa usar $_.fullname
para a remoção.
Acho que você quer fazer isso:
Get-ChildItem -Path c:\test | Where-Object { $_.Length -eq 8 -and $_.name -match "foo"} | foreach-object {remove-item $_.fullname}