in reply to Printing all lines of a file using a perl one liner
Add the -w flag to turn on warnings (-wne instead of -ne).
This might help you see that you are using $a1 $a2 $a3 where you probably meant to use $a[1] $a[2] $a[3].
Update: I see that I misread your post, because you did not put your code into < code >...</ code > tags. This is making $a[1], etc display incorrectly in our browsers.
Update2: I give you points for trying for code tags, even though it went awry. The "preview" button is your friend! (and I need to read more slowly )
In Section
Seekers of Perl Wisdom