Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Why shouldn't I "bet the future of the company" on shell scripts? [closed]

Tags:

bash

shell

ksh

I was looking at http://tldp.org/LDP/abs/html/why-shell.html and was struck by:

When not to use shell scripts

...

  • Mission-critical applications upon which you are betting the future of the company

Why not?

like image 461
Jon Ericson Avatar asked Aug 19 '08 23:08

Jon Ericson


1 Answers

Using shell scripts is fine when you're using their strengths. My company has some class 5 soft switches and the call processing code and the provisioning interface is written in java. Everything else is written in KSH - DB dumps for backups, pruning, log file rotation, and all the automated reporting. I would argue that all those support functions, though not directly related to call-path, are mission critical. Especially the DB interaction. If something went wrong with the DB-interaction code and dumped the call routing tables it could put us out of business.

But nothing ever does go wrong, because shell scripts are the perfect language for stuff like this. They're small, they're well understood, manipulating files is their strength, and they're stable. It's not like KSH09 is going to be a complete rewrite because someone thinks it should compile to byte code, so it's a stable interface. Frankly, the provisioning interface written in Java goes wonky fairly often and the shell scripts have never messed up that I can remember.

like image 167
jj33 Avatar answered Oct 19 '22 05:10

jj33