日期:2018年3月5日

Shell脚本:实用 Shell 文档

ChinaUnix上大神網中人总结的Shell十三问?,强烈推荐,这本书讲得比较精炼,而且都是一些Shell学习中容易把握不住的一些细节难点。每一问都写得非常精彩。 同样是ChinaUnix上,wingger大神整理的Shell基础二十篇。这份文档涉及的内容比较多,我没记错的话应该有很多命令的用法,而且配备实际使用的例子,对初学者帮助甚大。 Shell脚本专家指南也是一本不可多得的好书,我是之前在学校的时候买的这本书。上面都是作者实际工作中的经验总结,你可以从中学到很多其它书上学不到的实践知识。千万不要被专家两个字吓住了,书名的意思是专家给你总结的学习指南。 注:mingxinglai也在他的博客文章shell脚本学习材料种整理了很多实用的资料。 正则表达式 我个人学习正则表达式是从正则表达式30分钟入门教程开始的,这份文档让我了解了正则表达式的一些基础术语和基本的用法。 Linux下的正则表达式学习相对资源比较丰富,但同样得,因为不同工具的正则表达式或多或少都有一些不同,所以初学起来也比较让人困扰,但是正则表达式的关键在于多学多用。多看看grep/sed/awk中正则的用法,慢慢得就熟悉了。 这里推荐一篇InfoQ上介绍Linux下正则表达式不同流派之前的区别的文章——Linux/Unix工具与正则表达式的POSIX规范,读了它之后你会让你有种豁然开朗的感觉。 Sed与awk 学习Sed和awk命令不得不看的一本书是sed and awk,我目前只看了sed的这部分,它几乎涵盖了sed所有相关的知识,并且将sed行处理的原理讲得很透彻。之前并没有去研讨后半部分,想必应该同前半部分一样精彩。 网上还有一份非常宝贵的sed学习资料——sed1line,我之前也看过这份并且作了篇笔记sed1line 笔记。个人认为这才是sed的精华所在。 最近我在写一系列关于sed&awk这本书的笔记文章,有兴趣的可以看一看Sed&awk笔记。 寻找帮助的社区或者论坛 国内就是ChinaUnix,国外就是StackOverflow和SuperUser等问答社区,当然善用谷歌搜索也是一项基本技能。 资料索引 为了方便,我把一些有用的网站和资料放在这当一个索引: ChinaUnix论坛Shell版… Read More

Shell脚本:Bash function 还能这么玩, Something you didn’t know about functions in bash

今天看到一篇讲 Bash function 的有意思的文章,原文在这里。 在 Bash 中一般我们这么定义一个函数: function name () { ... } 这是非常常见的写法,包括我自己在内,一直把他当做类似 Python、C 等语言一样的函数定义语法。实际上这里{ ... }并不代表函数体或者函数的作用域。它只是代表里面的内容是一组命令的集合。了解这点之后,接下来就有一些比较好玩的写法了。 比如下面的函数作用是测试文件是否存在,这里就没用大括号: function… Read More