Crian+2008-11-26 10:10:08--Per Echo und mit dem Pipe wird eine temporäre Datei mit einer Zeile erzeugt.
Das mit der temporären Datei passiert aber glaube ich nur unter Windows, oder? Woanders wird das stdout von echo halt (mehr oder weniger) direkt an das stdin von perl gekoppelt.
Zum Schreiben in Dateien sollte man -p imho mit Vorsicht genießen, da es beim Schreiben nicht auf Fehler prüft, jedenfalls in allen von mir getesteten Perlversionen.