bash 学习篇 -- 简介

来源:互联网 发布:个人软件开发合同范本 编辑:程序博客网 时间:2024/06/05 18:22

一、使用bash

△Bourne-Again shell的缩写,对于所有UNIX上的shell脚本来说, Bash已经成为了事实上的标准了

△对于任何想适当精通一些系统管理知识的人来说, 掌握shell脚本知识都是最基本的

△Shell脚本遵循典型的UNIX哲学, 就是把大的复杂的工程分成小规模的子任务, 并且把这些部件和工具组合起来

二、什么时候不适合使用bash

△资源密集型任务,尤其是考虑效率时(如排序、hash等)

        •例子,time awk 'BEGIN{for(i=0;i<100000;i++){print "helloworld"}}' 这个6秒多 ,用BASH的FOR循环要8秒,用PERL,0.8秒.

        •处理APACHE的日志.apache的日志要导入到MYSQL里做统计,就要处理,调整下顺序,把英文的月份改成中文的,500M的一个日志,用WHILE READ 处理 中间用的SED处理,处理的速度是每分钟处理2M.用AWK处理了下,整个日志只用了40多秒.

△需要处理大任务的数学操作时, 尤其是浮点运算, 精确运算, 或者复杂的算术运算

△有跨平台移植需求时(一般使用C或Java).  △需要产生或操作图形化界面GUI时 △需要直接作系统硬件时

△复杂的应用, 在必须使用结构化编程的时候(需要变量的类型检查, 函数原型, 等等).  △需要I/O或socket接口时

△至关重要的应用时  △对于任务安全要求高时 △需要多维数组的支持时△需要数据结构的支持时  △需要使用库或者遗留下来的旧代码的接口时

△需要大规模的文件操作时(Bash受限于顺序地进行文件访问, 而且只能使用这种笨拙的效率低下的一行接一行的处理方式. ).

个人的, 闭源的应用时(shell脚本把代码就放在文本文件中, 全世界都能看到).

原创粉丝点击