in reply to
Unix shell versus Perl
My criteria for switching (assuming Perl is available) is that if a script needs any testing or branching, it gets Perled. I have no problem with twenty lines of program calls, but if I need to start using any program control more complex than &&, Perl wins.
I did have one large script (32K of ASCII including copious comments) I wrote at Sandia that was meant to be Bourne from the start, and it ended up being a really nifty system that included environment creation and program launching on the fly. In that case the reverse situation was true: Bourne shell was consistent, but the Perl version on the various boxen was not, and the systems support guy was not willing to fix all the various things that would have broken if we upgraded all Perl versions.
We had our reasons for doing it the way we did, and it worked out because this really was a system-level task set. Doing it in Perl would have been more work because we would have had to add modules to do the things that shell does naturally.
"There's more than one level to any answer."