Parece que la operación% inicia bloques de script después de la canalización, aunque about_Script_Blocks indica que% no es necesario.
Todo esto funciona bien.
get-childitem | % { write-host $_.Name }
{ write-host 'hello' }
% { write-host 'hello' }
Pero cuando agregamos un bloque de secuencia de comandos después de la canalización, primero debemos tener%.
get-childitem | { write-host $_.Name }