`
duanhengbin
  • 浏览: 383477 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

SHELL编程杂谈

阅读更多

最近一阵使用Linux颇多,N年前Unix上的经验还派上了不少用场。对于程序员来说Unix
上编程(包括shell和C)应该是不可或缺的体验。总结一下shell编程的优势。

 

1)众多强大的工具,兼有正则利器。
   SHELL作为一种胶水语言,优势就在于,可以联合众多工具发挥作用。这其中最常用的我称为七种兵器。


find  过滤出目标文件    剑意:长生剑,以所有文件为源头,过滤出感兴趣的一部分文件
grep  过滤出目标行    剑意:孔雀翎,这个厉害,一下命中要害过滤出所需的行内容
awk 文本处理工具    剑意:碧玉刀,将行内容大块切分组合
cut 文本截取工具    剑意:霸王枪,简单截取使用较方便
sed 文本替换工具    剑意:离别钩,将不需要的勾出替换
tr  字符替换工具    剑意:小李飞刀,独门技艺只意识字符流,不分行处理
xargs 参数列表转换    剑意:多情环,不用for/while也能循环,舍我其谁

 

  其中最重要的grep,awk,sed都支持正则表达,强大的工具为shell提供了基本保证。

  当然除了这几个以外还有很多有用的工具,不一一列举。 


2)管道 无疑是UNIX最具革命性的特征之一。
     主要特点:

.不需要使用中间变量,不占用多于空间
.粘合众多工具,将积木式的工具构造方法发挥到极致


  数据还在管道中流动,经过不同工具的重新铸造,可以无穷变化最终得到理想的形态,实在是一门艺术。
  UNIX中常讲“一切都是文件”,对于管道来说一切都是流,没错,JAVA中流的概念与之很相似。

 

【SHELL之外】

SHELL是很强大,但是毕竟是比较简单直接的胶水语言,有时候不得不使用另外一对脚本语言中的“雌雄双剑” Perl / Python。

      先说Perl,大家谈论到最多的就是他完备的正则表达能力,由于出现得最早,可以说已经成为了一种标准。

      个人感觉Perl在两种情况下,上面的七种兵器无能为力。

              一个是需要使用“非贪婪”的正则语义时。

              另一个是需要协同操作两个以上文件时。

       再看下Python,她是首个在脚本语言中使用对象概念的语言。经过多年的积累,特别是Google的强力支持,已经有了非常大的标准库,在与网络相关的脚本编程时是首选。


  下面是几本看过的不错的书:


  《高级Bash脚本编程指南》 目前只有电子版网上很容易找。涉及到Bash的细节非常深入。

  《Linux Shell脚本攻略》 一个20岁的印度天才的作品,值得一读。
  《正则指引》                关于正则表达内容全面翔实,国人原创精品,真的不错。

  《Perl语言入门》          被称为“小骆驼书”,对于100行以内的编程足够了。不行再上“大骆驼”

  《Python基础教程》      这本书的精华是后面的实战项目。

分享到:
评论

相关推荐

    shell编程指南shell编程指南shell编程指南shell编程指南

    shell编程指南shell编程指南shell编程指南shell编程指南shell编程指南shell编程指南shell编程指南shell编程指南

    shell编程教程.chm

    shell编程-shell编程-分支语句(1) shell编程-shell编程-分支语句(2) shell编程-shell编程-循环语句(1) shell编程-shell编程-循环语句(2) Linux的shell编程(一) Linux的shell编程(二) Linux的...

    shell 编程shell 编程

    shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程...

    shell编程入门经典--LINUX与UNIX Shell编程指南 (中文pdf版)

    shell编程入门经典--LINUX与UNIX Shell编程指南 (中文pdf版)

    shell编程shell编程shell编程shell编程

    shell编程shell编程shell编程shell编程

    Shell编程高级进阶系列视频.zip

    13Linux下Shell编程之While case演练 14Linux下Shell编程之While case演练 15Shell编程之函数及脚本案例讲解 16Shell编程之函数及脚本案例讲解 17Linux下Shell编程FIND、SED命令实战 18Linux下Shell编程FIND、SED...

    shell编程入门教程+shell脚本专家指南+UNIX.shell编程24小时教程.rar

    shell编程入门教程+shell脚本专家指南+UNIX.shell编程24小时教程

    shell编程题目练习

    shell编程题目练习,练习基本的shell编程,学习脚本语言,提高效率

    LINUX与UNIX SHELL编程指南

    LINUX与UNIX SHELL编程指南

    UNIX命令及SHELL编程

    这是一套完整的Unix培训教材,包括Unix常用命令及SHELL编程基础与高级技巧,PDF格式,共30个文件。另有2个Word文档。包内文件清单如下: 01_Shell-文件安全与权限.PDF 02_Shell-使用find和xargs.PDF 03_Shell-...

    Linux操作系统Shell编程

    经典Linux和unix的Shell编程,按照模板练习即可快速提高。

    shell编程个人笔记

    shell编程个人笔记shell编程个人笔记shell编程个人笔记shell编程个人笔记shell编程个人笔记shell编程个人笔记shell编程个人笔记shell编程个人笔记shell编程个人笔记shell编程个人笔记shell编程个人笔记shell编程个人...

    Linux与Unix shell编程指南(完整高清版)

    Linux与Unix shell编程指南(完整高清版)Linux与Unix shell编程指南(完整高清版)Linux与Unix shell编程指南(完整高清版)Linux与Unix shell编程指南(完整高清版)Linux与Unix shell编程指南(完整高清版)Linux...

    Unix Shell Shell编程

    6本pdf及chm的shell 编程的书 6本pdf及chm的shell 编程的书 6本pdf及chm的shell 编程的书 6本pdf及chm的shell 编程的书 6本pdf及chm的shell 编程的书

    shell编程2 shell编程2 shell编程2

    shell编程2 shell编程2 shell编程2shell编程2 shell编程2 shell编程2shell编程2 shell编程2 shell编程2shell编程2 shell编程2 shell编程2

    shell 编程指南pdf

    第四部分 基础shell编程 第16章 shell脚本介绍 151 16.1 使用shell脚本的原因 151 16.2 脚本内容 151 16.3 运行一段脚本 152 16.4 小结 153 第17章 条件测试 154 17.1 测试文件状态 154 17.2 测试时使用逻辑操作符 ...

    Shell编程

    Shell编程Shell编程Shell编程Shell编程Shell编程Shell编程Shell编程Shell编程Shell编程Shell编程Shell编程

    Shell编程入门基础必备视频教程.zip

    1Linux下Shell编程入门及变量讲解.mp4 2Linux下Shell编程入门及变量讲解.mp4 3Shell编程企业实战菜单系列.mp4 4Shell编程企业实战菜单系列.mp4 5Linux下LAMP实战及脚本编程思路讲解.mp4 6Linux下LAMP实战及脚本编程...

    绝版经典 LINUX与UNIX SHELL编程指南 PDF 高清版 [16.3M]

    shell是一种完整的编程语言,易学易用;shell脚本可以使烦人的手工作业自动化,使你的工作变得简单、轻松!本书通过各种实用的系统管理小技巧和趣味脚本代码,详尽地介绍了shell编程各个不同的方面。学完本书后,你...

Global site tag (gtag.js) - Google Analytics