korn shell 脚本入门

korn shell 脚本入门

ID:22371325

大小:77.00 KB

页数:12页

时间:2018-10-28

korn shell 脚本入门_第1页
korn shell 脚本入门_第2页
korn shell 脚本入门_第3页
korn shell 脚本入门_第4页
korn shell 脚本入门_第5页
资源描述:

《korn shell 脚本入门》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、KornShell脚本入门  什么是Shell?  IBM®AIX®操作系统和其他的类UNIX操作系统一样,都需要通过某种方式与内核进行通信。这项任务正是通过使用Shell来实现的。您可以使用各种不同的Shell,但本文重点关注于KornShell。KornShell是AIX所使用的缺省Shell。  当您登录到AIX中时,将以某个目录的提示符作为开始。缺省目录通常是您的home目录。之所以将其称为home目录,是因为该目录的结构通常如下所示:$/home/jthomas:  当登录时,您将处于命令行或者命令提示符处。这正

2、是您输入UNIX命令的地方。您可以输入与UNIX内核进行交互的Shell命令。这些命令可能简单到只有一行(比如查看日期),也可能为多行,而这取决于您所进行的操作。清单1提供了一些示例命令。  清单1.示例命令$dateFriMay 122:59:28EDT2008$uptime10:59PM up259days, 9:44, 5users, loadaverage:3.81,14.27,13.71$hostnamegonzo  有关Shell命令的最棒的一项功能是,您可以将多个命令组合在一个称为脚本的文件中,它允许您依次运行多个命令。当您

3、必须一次又一次重复地运行相同的命令时,使用脚本非常合适。您可以将这些命令放到一个KornShell脚本中,而无需反复地键入这些命令。  编写您的第一个KornShell脚本  KornShell脚本中的第一行是Shell自身。它被表示为下面的形式:#!/bin/ksh  要在AIX中编写KornShell脚本,您需要使用一种文本编辑器。vi是一种使用最广泛、且随处可见的文本编辑器。开始接触时可能会觉得有点麻烦,但随着使用vi的次数的增多,您将熟练地掌握它。关于如何使用vi文本编辑器,人们撰写了很多相关的书籍。  要开始编写您的第一个Kor

4、nShell脚本,首先需要打开vi编辑器,并添加Shell名称作为第一行。完成这项操作之后,您需要构建某种类型的脚本标头,用来告诉编写脚本的用户,该脚本将执行什么操作,以及该脚本的编写时间。您可以对脚本进行任意地命名,但通常使用扩展名.ksh来表示KornShell脚本。您并不是必须要这样做,但这是一种很好的做法。镑符号(#)可用于对脚本进行odeforusernamein$(cat$PASS up259days, 10:47, 5users, loadaverage:4.71,10.44,12.62$echo$?0$IBMksh:IBM

5、: notfound.$echo$?127$aixksh:aix: notfound.$echo$?127$ls-l/etc/passp;1  这个命令允许您列出该文件。然而,您并不是真的在意这个文件是否存在。对于您来说,重要的是获得该命令的返回代码。大于符号>允许您对该命令的输出进行重定向。在本文稍后的内容中,您将了解更多有关重定向输出的信息。  清单8显示了如何在脚本中使用$?。  清单8.在脚本中使用$?#BeginCodePASSe done     fi  我尝试了列出该文件,而不是实际地进行检查,以判断该文件是否存在。如

6、果您可以列出该文件,则表示该文件存在。如果您无法列出该文件,则上一页1234下一页——感谢阅读这篇文章,..,表示该文件不存在。在AIX中可以通过使用ls¨Clfilename命令列出文件。这项操作使得您可以通过检查$?变量来测试AIX命令是否成功执行。  标准输入、输出和错误  您真的需要了解这些内容。一般说来,主要存在三个输入和输出源。在AIX中,它们分别称为STDIN、STDOUT和STDERR。STDIN指的是您可能从键盘获得的输入。STDOUT是执行一个命令时打印到屏幕上的输出。STDERR则对应于一个命令失败时的屏幕输

7、出。STDIN、STDOUT和STDERR的文件描述符分别映射到数值0、1和2。  如果希望检查一个命令成功或者失败,那么您可以进行类似清单9中的操作。  清单9.将输出重定向到STDOUT和STDERR$date>/dev/null21 #Anyoutputfromthismandshouldneverbeseenif[[$?=0]];then   printThedatemandandfailedfi  这段代码运行了AIX中的date命令。您应该不会看到任何来自STDOUT(文件描述符1)或者STDERR(文件描述符2)的输出

8、。然后,您使用条件型if语句,以检查该命令的返回代码。如前所述,如果该命令返回零,那么该命令的执行是成功的;如果它返回的是非零,那么它的执行是失败的。  函数  在KornShell脚本中,单

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。