我看了看http://tldp.org/LDP/abs/html/why-shell.html,被以下内容打动了:
当不使用
脚本时
..。
公司的未来
为什么不行?
发布于 2008-08-20 03:12:01
当您使用shell脚本的优点时,使用它们是可以的。我的公司有一些5类软交换机,呼叫处理代码和供应接口都是用java编写的。其他一切都是用KSH - DB转储编写的,用于备份、剪枝、日志文件旋转和所有自动报告。我认为,所有这些支持功能,虽然与呼叫路径没有直接关系,但都是关键任务。尤其是数据库交互。如果DB交互代码出了问题,抛出了呼叫路由表,我们就会破产。
但是任何事情都不会出错,因为shell脚本是这样的完美语言。它们很小,很容易理解,操作文件是它们的优势,而且它们是稳定的。这并不是说KSH09将是一个完整的重写,因为有人认为它应该编译成字节码,所以它是一个稳定的接口。坦率地说,用Java编写的供应接口经常不稳定,我记得shell脚本从来没有搞砸过。
发布于 2008-08-20 00:17:20
我觉得这篇文章列出了一个很好的清单,列出了不使用shell脚本的原因--你所指出的单一任务关键子弹更多的是基于所有其他子弹的结论。
话虽如此,我认为您不想在shell脚本上构建关键任务应用程序的原因是,即使今天没有其他要点适用于,,任何要在一段时间内维护的应用程序都将发展到至少被某些point.....and的潜在缺陷之一咬下的地步--没有任何东西能够真正地解决它,除非您从一开始就使用了更多的工业优势。
发布于 2008-08-20 00:29:22
脚本只不过是计算机程序而已。有些人会争辩说,脚本不那么复杂。这些人通常会承认,你可以用脚本语言编写复杂的代码,但从定义上来说,这些脚本实际上不再是脚本,而是成熟的程序。
管他呢。
在我看来,正确的答案是“视情况而定”。顺便说一句,对于相反的问题,您是否应该信任任务关键应用程序的编译可执行文件,这也是同样的答案。
好的代码是好的,坏的代码是坏的--无论是用Python、Ruby、Perl、Basic、Forth、Ada、Pascal、Common、Cobol还是编译C编写成Bash脚本、Windows文件。
这是,而不是,说选择语言并不重要。有时,有很好的理由选择一种特定的语言或编译与解释(性能、可伸缩性、能力、安全性等)。但是,在所有条件相同的情况下,我相信一个伟大的程序员编写的shell脚本,而不是一周中的任何一天由一个傻瓜编写的同等的C++程序。
https://stackoverflow.com/questions/17231
复制相似问题