第16讲第7讲Shell脚本设计7.1 Shell脚本简介以及编写简单脚本.ppt

第16讲第7讲Shell脚本设计7.1 Shell脚本简介以及编写简单脚本.ppt

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第16讲 第7章 Shell脚本设计 7.1 Shell脚本简介 以及编写简单脚本 引 言 什么是Shell脚本? 什么时候需要Shell脚本? 如何编写一个简单的Shell脚本? 【问题1的提出】 Geecy软件开发公司的开发人员Tom在调试程序的过程中遇到了一个令人烦恼的问题:在运行一个用C语言编写的应用程序的时候,该程序需要读取一个包含当前时间值的文本文件,该文件的格式必须为:第1行是“月-日-年”,第2行是“时:分”。 【问题1的提出】(续) date命令的默认显示格式是: “星期 月 日 时:分:秒 时区 年” 因此,Tom每次运行程序前,都要手工修改该数据文件,即先运行date命令,再修改数据文件,最后运行该应用程序。而且从运行date命令到运行该应用程序最长时间不应该超过1分钟,否则就要重新修改数据文件。 【问题1分析】 有两种传统的方法可以完成对该数据文件的修改: (1)使用文本编辑器 即先运行date命令,记录下当前时间,然后用vi打开该数据文件,再修改数据文件并保存退出,最后立即运行该C写的应用程序。 如果从运行date命令到运行该应用程序最长时间超过1分钟,则影响该程序的调试,导致整个过程必须重做。 【问题1分析】 有两种传统的方法可以完成对该数据文件的修改: (1)使用文本编辑器 (2)使用组合命令 使用管道和重定向的组合命令,效率大为提高,但是仍然需要输入两个很长的命令,操作上依然不太方便。 date | cut -f2,3,6 -d “ | tr - data.txt date | cut -f4 -d | cut -f1,2 -d : data.txt 【问题1分析】(续) 这两种方法都存在一些缺点,不够理想。 事实上,可以采用编写Shell脚本的方式完成此任务。 7.1.1 认识Shell脚本 用户可以把若干个命令保存到一个文本文件,然后使用该文件的名字一次执行所有的命令。 这些命令将逐行执行。 这样的文本文件称为Shell脚本(Shell Script)。简称脚本。 脚本是一组命令的集合。凡是能够在shell提示符下直接执行的命令,都可以在脚本中使用。 脚本中还可以使用一些不能在shell提示符下直接执行的语句,这些语句只有在脚本中使用才有效。 7.1.2 编写简单脚本 使用vi编辑一个新文件fist_script: vi first_script 输入以下两行内容: ls -F / date 保存文件并退出vi。 7.1.3 运行脚本 在命令提示符下使用某个Shell执行该脚本。例如: bash first_script 这种方法指定了一个特定的shell版本,此处是bash,来执行该脚本文件; 指定的shell将首先读入脚本文件first_script,然后逐行执行脚本中的命令,并依次输出结果。 当脚本文件中的命令依次执行完毕,该临时的子shell也自动结束运行,返回到用户原来使用的shell状态下。 7.1.3 运行脚本(续) 另一种运行方式更为常见,即在文件中的开始部分指定一个将要使用的shell,例如,首先修改脚本,在开头增加一行: #!/bin/bash --其中#!必须是第一行的前两个字符,后接具体shell的绝对路径。 然后修改脚本的FAP,增加文件拥有者的执行权限: chmod u+x first_script 最后,象使用系统命令一样直接运行脚本:./first_script 7.1.3 运行脚本(续) 关于直接运行脚本:./first_script 中的“./”; 由于默认搜索路径PATH并不包含当前工作目录,因此需要添加“./”指定当前需要运行的脚本切确的路径是在当前目录中。 显然,也可以使用绝对路径方式来直接告诉系统当前需要运行的脚本的切确路径。 用户可以从文件/etc/shell获知系统中所有可用的shell以及其绝对路径。 7.1.4 注释脚本 为了增加可读性,用户可以在脚本中以行为单位插入注释(Comment)。 所注释的行使用字符“#”开头,当Shell遇到“#”开头的行将会忽略该行,即运行时,注释并不会显示出来。 【问题1解决方案】 1、首先用vi创建新文件update; 2、输入下面的内容; 3、为脚本update加上执行权限:chmod u+x update 4、随时可以通过执行脚本update快速生成测试数据文件data.txt 第16讲 编写简单脚本 第*页 共14页 * 注意:无空格 #!/bin/bash # Add a formatted string of date to data.txt date | cut -f2,3,6 -d | tr

您可能关注的文档

文档评论(0)

kehan123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档