$/ = qq{"\$"\t""\t""\n};
You've got too much here. It should probably be qq{\$\t\t\n}, or something similar. You've got qq{}, which is double quotes so interpolates, but then "" wrapping the pieces inside. The interior quotes are left in. Try printing $/ to see what you've got. Presumably you are not getting the DEBUG messages, which means its likely just trying to grab the whole file. Your previous post, also, doesn't mention the tabs in the record separator.
You should take, as your sample file, the first three of entries from your main file. If it works on that it should work on the rest (or die with an error).
Finally, build your script slowly. Comment out everything in the while loop. Add print $_;. If thats right, add the my $file ... line in. Print and check. Repeat. (Poor mans testing!).
In reply to Re: Optimizing a script
by qq
in thread Optimizing a script
by Micz
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |