Baidu
当前位置:主页>shell脚本编程实例>列表

Unix/Linux Shell脚本编程实例分析

这里结合大量实例阐述如何编写一个优秀的shell脚本,解决在日常维护中碰到的各种问题,相信会对你有很大帮助的。
#1 查询程序是否存在PATH中
使用环境变量的shell脚本(如MAILER和PAGER)存在一些隐藏的危险,可能有部份设置是指向不存在的程序。举个例子说下,在显示脚本的输出时,如果我们选择灵活性强的PAGER设置来取代一个制式的特定工具,那么要如何确保PAGER值是指向一个存在的程序呢?... 开始阅读...
#2 只接收字母与数字的有效的输入
我们经常忽略对格式的要求,在输入资料的过程中,使用不正确的格式或语法。身为一名shell脚本的开发者,当我们在输入资料时,有必要避开或者纠正这种错误,以防止这些问题的发生。... 开始阅读...
#3 标准化日期格式
对于shell脚本的开发者来说,数据的资料格式不一致是一个很大的问题,要让它们能够标准化也是一个相当棘手的问题。日期的格式是众多问题中的一个,因为日期的表示方式有许多种,即使我们使用"月日年"的方式来表示,我们也可能有不同的输入方式:月份的部份我们可以输... 开始阅读...
#4 让数字看起来更容易些
直接显示未格式化的计算结果是程序员常犯的错误。如果我们沒有将43245435这个数加上一个干分号(数值中每隔三位加上的一个逗号)的话,对使用者而言,他们很难直接读出这个数值的大小。那么请利用下面这个脚本来解決这个问题。... 开始阅读...
#5 有效的整数输入
我们之前在就提过一个问题,要检查整数的输入是否正确是一件极为简单的事情,但是要确认负数的值就有一定的困难了。进行比较的问题是:每一个数值只能够在开始的位置摆上一个负号。本节脚本的功能,在于确认负号的格式是否正确,以及检查使用者是否能够大小输入数值。... 开始阅读...
#6 有效的浮点输入
乍看之下,在shell脚本的范围与能力下处理浮点数(或实数)的运算看起来似乎有点困难。不过仔细想想浮点数也只不过是两个整数的组合。只不过两者间被一个小数点隔开了。如果将我们理解到的这一点放在其他的脚本中,你将可以体验到浮点数的运算速度有多么的惊人。... 开始阅读...
#7 确认日期格式
确认工作对我们是一项很大的挑战,而在shell脚本中比较重要的是确认时间,它必需保证日期是有效的。如果我们在这方面忽视了闰年,工作似乎也不会有太大的影响,因为我们的日历规则每年始终如一。在这个例子中,我们比较需要的是:每个月特定日期的表格。... 开始阅读...
#8 避免使用粗糙的echo
当目前大部份的Unix或Linux都拥有echo命令时,它们大都以"-n"的方式来控制系统不要换新行。但并不是所有的系统都支持这种方式,也有部份的是利用"\c"的方式来控制,其他较简单的系统就不理会换新行这个动作。... 开始阅读...
#9 编写随心所欲的浮点运算器
在写脚本的过程中,最常用的一种运算写法是$(()), 它能帮我们完成各种不同形式的数学运算。这种写法对于一般大量的运算相当的好用,它也提供加減乘除及求余数的运算式,不过并不提供分数及小数的运算。... 开始阅读...
#10 锁定档案
任何一个脚本在存取分享档案时,就像是记录档一样,都需要一个可信赖的方法来锁住档案,这么一来,其他的脚本程序就无法修改这个档案了。我们可以利用发讯号的方式来识别已锁定的档案,并告知此档目前在使用中,不能够存取。...开始阅读...
#11 ANSI颜色序列
或许你还不知道你的标准终端应用是能够支持显示不同风格的文本。你是否想让一些词在你的脚本里展示有个性的,比如是字体是红色,并有个黄色的背景作衬托呢?但是,如果你通过使用ANSI(美国国家标准学会)序列去作这些变化可能很难的,... 开始阅读...
#22 显示不同时区的时间
通常我们要查询本地区当前的日期和时间,可以使用到最基本的date命令。但是如果你要要穿越不同的时区,这时不就遇到麻烦了?或者,更有说服力点...开始阅读...
《Unix Shell实例精解》学习笔记之grep篇
《Unix Shell 实例精解》学习笔记之grep篇 1.grep的含义是“全局搜索正则表达式(RE)并打印该行” 2.grep 的选项...开始阅读...
grep应用实例讲解
sed是流线型、非交互式编辑器。它允许你执行与vi和ex编辑器里一样的编辑任务。Sed 程序不是与编辑器交互式工作的,而是让你在命令行里敲入编辑的命令,给文件命名,然后在屏幕上查看命令输出结果。...开始阅读...
Shell脚本调试技术
使用trap/tee命令/调试钩子调试Shell脚本
本文全面系统地介绍了shell脚本调试技术,包括使用echo, tee, trap等命令输出关键信息,跟踪变量的值,在脚本中植入调试钩子,使用“-n”选项进行shell脚本的语法检查, 使用“-x”选项实现shell脚本逐条语句的跟踪,巧妙地利用shell的内置变量增强“-x”选项的输出信息...开始阅读...
使用shell的-n/-x/-x执行选项调试Shell脚本
我们在前面介绍的调试手段是通过修改shell脚本的源代码,从其输出相关的调试信息来定位错误的,那有没有不修改源代码来调试shell脚本的方法呢?有的,那就是使用shell的执行选项,下面将介绍一些常用选项的用法...开始阅读...
Bash 中的递归函数介绍
递归经典之教你制做fork炸弹
可能很多人都曾经听说过fork炸弹,它实际上只是一个非常简单的递归程序...开始阅读...
递归函数的返回值问题
有一些经典的数学问题,使用递归函数来解决都非常方便。阶乘就是这样一个典型的问题...开始阅读...
递归函数的参数传递问题
在设计函数时,除了返回值之外,我们可能还希望所调用的函数还能够返回其他一些信息。...开始阅读...
递归函数的性能问题
尽管编写 bash 脚本可以实现递归函数,但是由于先天性的不足,使用 bash 脚本编写的递归函数的性能都比较差...开始阅读...
下一页
copy right 2007-2008