| FreeBSD Shell脚本 | ||||||
| 作者:linuxsea 来源:linux海洋 发布时间:2006-10-21 19:48:31 发布人:admin | ||||||
执行脚本程序的最直接方式是如同上面的例子中,将脚本文件作为 sh的一个参数来启动。然而,更完善的方式是直接执行脚本本身,这就需要在脚本的第一行加上 ” #! /bin/sh ” 指出解释这个脚本的程序为 sh,然后为该文件增加执行属性,那么该脚本程序就可以独立执行了。 $ head -1 test.sh #! /bin/sh $ chmod +x test.sh $ ./test.sh 当把所需要的操作抽象到脚本程序中之后,通常就意味着这个程序可能多次运行,这也就意味着,这个程序需要处理一些输入工作。第一种将数据输入到脚本程序的方法是使用程序参数, sh将使用内部变量$#代表参数的数量,$*代表所有的参数字符串,而$1代表第一个参数,等等。
如果参数中间包含空白字符,那么可以使用引号将它引起来,表示是一个参数。 第二种将数据输入到程序中的方法是让程序自身去读取输入,这可以通过 read来完成。
read使用 ” -p ” 作为输入提示,将用户输入的整行内容赋给相应的变量,如果要求输入多个变量, read会按照分隔符的要求,将第一个单词赋给第一个变量,其他部分赋给第二个变量。 可以注意到,这里的变量并没有使用 export指令,事实上一个变量可以直接使用,当它的有效范围有限,只是一个局部变量,只在这个脚本内部,或者在命令行的一行命令中内部有效,不能影响这个脚本启动的其他外部程序。 Shell脚本本身是比较简单的,但它在很多情况下十分有效,特别是对于执行日常经常执行的维护操作,它的能力来源于Unix下命令的灵活组合能力,这就是Unix设计的主要思路之一,因此对于Unix用户来讲,掌握shell脚本是非常有用的。参考系统的rc启动脚本,能够学习到更多的脚本编程技巧,这些技巧能够大大提高日常工作的效率。 简单的 shell脚本掌握起来非常简单,但如果使用它来实现一些高级功能,shell脚本的处理能力有时候就不够了,这些时候,例如 awk、perl、python等高级脚本语言更为有效。 |
||||||
| [] [返回上一页] [打 印] [收 藏] | ||||||
上一篇文章:SCO UNIX作业调度 下一篇文章:FreeBSD Shell的高级功能 |
| ∷相关文章评论∷ (评论内容只代表网友观点,与本站立场无关!) [更多评论…] |
| · 入门提高 |
| · 开发区 |
| · 网络与应用 |
| · unix |
| · 新闻与认证 |