阅 读 文 章

SA118翻译(12)

[来源:网上转载 (http://www.chinaunix.net) | 作者:网友(hfzheng) | 时间:2007-05-27 | 浏览:人次 ]


第十三章 阅读shell脚本
翻译:hfzheng
hfzheng@sohu.com
转载请保留此信息
基本的shell脚本
一个shell脚本是一个ASCII文件,包含了一系列的命令以及注释。
注释是文档中的文本,用来说明脚本的功能以及每一行脚本执行完后需要完成的功能,注释以#开头。
确定shell脚本类型
脚本最上面一行说明执行脚本的shell程序类型,例如,对于Bourn shell而言,第一行应该是:
#!/bin/sh
内核使用#!来识别用来翻译脚本的程序。
备注:korn shell的第一行应该为#!/bin/ksh,c shell的第一行应该为#!/bin/csh。
不过,并不是所有的shell脚本使用最上面一行来识别shell程序。
一些脚本可以在最上面有一个基本的文本注释。和父shell同样的shell来执行该脚本。一些脚本可能在最上面没有注释。在这种情况下,则使用默认的shell程序来执行该脚本。
创建一个基本的shell脚本
创建一个基本的shell脚本使用以下步骤:
1、使用vi编辑器,创建一个文件,名为my.script,输入命令,后跟tab键,然后以#开头定义注释;
2、使文件可以执行,然后在命令行方式下输入该文件的命令。
$ vi my.script
who # To view who is logged on the system.
date # To view the current date and time
ls -l # To view files in current directory
:wq
$ chmod 755 my.script
$./my.script
Bourne shell编程
用于管理Solaris操作环境的标准管理脚本是bourne shell脚本。
为了成功控制、修改操作环境的行为,系统管理员必须可以读、修改和定制这些不同的shell脚本文件。
通常,所有的Bourne shell脚本包括了一组UNIX命令、Bourne shell内建命令、编程结构和注释。
Bourne shell脚本
要能够阅读,更重要的是理解基本shell脚本的内容,必须能够:
1、能够理解参数如何传给脚本,通过使用特殊的称为位置变量的内建变量传递;
2、能够识别和分析简单的条件结构和流程控制;
特殊的shell内建变量
位置参数
特殊的shell内建变量称为位置参数,用于从命令行中传递参数给脚本。
在命令行方式下,跟在脚本名称后的用空格分割的每个单词,称为参数,这些参数在shell脚本中称为位置参数。
命令格式
scriptname argument1 argument2 argument3 ...
当脚本执行时,shell自动存储命令行中的第一个参数到位置参数$1中,第二个参数到位置参数$2中,第三个参数到位置参数#3中,依此类推。
重置一个位置参数
set命令用于重置位置参数。
下面示例描述如何使用set命令来设置位置参数。
首先执行带选项-m的who命令,查看输出:
$ who -m
user1 pts/5 Mar 13 11:43 (host1)
$
现在使用cat命令创建shell脚本,命名为my.script3:
$ vi my.script3
#!/bin/sh
set ‘who -m‘
echo Here are the positional variables that have been set:
echo The first is: $1
echo The second is: $2
echo The third is: $3
echo The fourth is: $4
echo The fifth is: $5
echo The sixth is: $6
echo This script is: $0
$ ^d
使用chmod命令使脚本可以执行:
$ chmod 755 script3
论坛热门帖子: [lch203] 写得蛮好的linux学习笔记(10-21)
[黑马制造] 学习java的30个目标(10-19)
[笑傲股林] 做测试半年了,有点迷茫,应该再学些什么提高自己的测试水平和测试能力呢?(10-19)
[udp8589] 大家用google的来吱一声? 用百度的~~也来报道下?(10-18)
[沂偌掳兆] 本人总结的一些认为C++比较经典的书籍,希望对大家有用(10-18)
TAG标签: 翻译 命令 脚本 执行 一个 参数 shell 退出 #59 状态

最新评论 共有0位网友发表了评论

发表评论

评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名:(注册)
密码:
验证码:
匿名发表

网站地图友情连接交流论坛网站投稿广告服务联系我们留言本站长统计
Some rights reserved: www.chmhome.com, 鄂ICP备07010232号 E-mail:chinakafei@live.com,QQ:552766
中国咖啡技术网(Chmhome):国外编程技术书籍,中文编程手册,经典编程文章,交流技术,技术软件下载,计算机论文,毕业论文.