Day: March 9, 2018

Shell脚本:Shell 编码风格

Scripting with style 是少见的一篇介绍 Shell 编码风格 的文章,相信对大多数运维人员有用,现在将译文献上。 缩进准则 我一般使用2个空格来缩进(尽管大多人使用4个空格),原因是: 输入简单快速; 没有输入一个Tab键,避免不同环境下显示的差异问题; 缩进的效果已经足够,并且没有浪费太多的空间; 译者注:本人也是使用4个空格,如果你也与本文作者的风格不一样,下面说到2个空格的地方请自觉替换成你实际使用的空格数。个人认为,缩进只是一个个人的风格,只要不影响可读性即可。 顺便说一句,尽量不要使用Tab键,它们容易带来麻烦,我只能想到一种情况下它是有用的:here document中的缩进。 分隔长行 如… Read More

Shell脚本:浅谈 Shell 脚本配置文件格式

开发过程中为了减少 hardcode,不可避免的需要提供配置文件给用户定制。对于高级编程语言来说,因为有丰富的第三方库,可供选择的配置文件格式有很多,比如 xml、jsno、ini、yaml 等等。 key=value 文本格式配置 而对于 linux shell,基本上很难使用前面提到的各种格式。所以在 unix 系统上,很多 shell 脚本的配置文件都是纯粹的 key=value 文本格式,例如绝大多数的开机服务启动脚本、网络配置文件等。 例子 1:ntp 配置文件 $ cat /etc/sysconfig/ntpd # Drop root to id 'ntp:ntp' by default. OPTIONS="-u ntp:ntp -p /var… Read More

Shell: sed 获取匹配串的行号, sed删除某一行, sed打印某一行, sed print particular line number

  做一个文本文件做测试: Given below is content of file called test. Absolute path is /tmp/test This is a test for sed command to be performed on test server Hello World How do you do 本教程使用两种模式:We are using two methods in this tutorial 模式一: 使用‘d’ 删除 ,Method 1 : By using ‘d’ command i.e for delete 模式二: 使用‘p’ 打印, Method 2 : By using ‘p’ command i.e for print   SED… Read More