- 15
- 0
- 约1.26万字
- 约 70页
- 2018-12-18 发布于广东
- 举报
第4章 shell编程 内容提要 SHELL概述 创建和执行SHELL脚本 SHELL特殊字符 SHELL变量 正则表达式与算术表达式 控制结构 其他命令 函数 调试SHELL脚本 4.1 shell概述 4.1.1 shell特点 (1)对已有命令进行适当组合,构成新的命令,而且组合方式很简单; (2)提供了文件名扩展字符使得用单一的字符串可以匹配多个文件名, (3)可以直接使用shell的内置命令,而不需创建新的进程,; 4)shell允许灵活地使用数据流,提供通配符、输入/输出重定向、管道线等机制,方便了模式匹配、I/O处理和数据传输; (5)结构化的程序模块,提供了顺序流程控制、分支流程控制、循环流程控制等; (6)shell提供了在后台()执行命令的能力; (7)shell提供了可配置的环境,允许用户创建和修改命令、命令提示符和其他的系统行为; (8)shell提供一个高级的命令语言,允许用户能创建从简单到复杂的程序。 4.1.2 shell的主要版式本 在Linux系统中常见的shell版本有以下几种。 (1)Bourne shell(sh):它是UNIX最初使用的shell,并且在每种UNIX上都可以使用。它在shell编程方面相当优秀,但处理与用户的交互方面不如其他几种shell。 (2)C shell(csh):它最初由Bill Joy编写,它更多地考虑了用户界面的友好性,支持如命令补齐等一些Bourne shell所不支持的特性,但其编程接口做得不如Bourne shell。Cshell被很多C程序员使用,因为C shell的语法和C语言的很相似,C shell也由此得名。 (3)Korn shell(ksh):它集合了C shell和Bourne shell的优点,并且和Bourne shell完全兼容。 (4)Bourne Again shell(bash):bash是大多数Linux系统的默认shell。它是Bourne shell的扩展,并与Bourne shell完全向后兼容,而且在Bourne shell的基础上增加和增强了很多特性。。 (5)tcsh:它是C shell的一个扩展版本,与csh完全向后兼容,但它包含了更多使用户感觉方便的新特性,其最大的提高是在命令行编辑和历史浏览方面。它不仅和Bash shelll提示符兼容,而且还提供比Bash shell更多的提示符参数。 (6)pdksh:它是一个专门为Linux系统编写的Korn shell(ksh)的扩展版本。Ksh是一个商用shell,不能免费提供,而pdksh是免费的 4.2 创建和执行shell脚本 1. 建立shell脚本 shell脚本(shell script)是指使用用户环境shell提供的语句所编写的命令文件。shell脚本可以包含任意从键盘输入的Linux命令。 建立shell脚本的步骤与建立普通文本文件的方式相同,利用文字编辑器(如vi)进行程序录入和编辑加工。例如建立一个名为ex1的shell脚本,可提示符后输入命令: $vi example1 [例4.1] 显示当前的日期时间、执行路径、用户账号及所在的目录位置。 在命令行中输入: $ vi example1 在vi编辑器中输入下列内容: #!/bin/bash #This script is a test! echo –n “Date and time is :” date echo –n “The executable path is :”$PATH echo “Your name is :`whoami`” echo -n “Your current directory is :” pwd #end 2. 执行shell脚本 执行shell脚本的方式基本上有下述三种: (1)输入定向到shell脚本。 其一般形式是: $bash脚本名 例如:$bash example1 (2)以脚本名作为参数。其一般形式为: $bash 脚本名 [参数] 例如,$bash example1 如果以当前shell执行一个shell脚本,则可以使用如下简便形式: $. 脚本名 [参数] (3)将shell脚本的权限设置为可执行,然后在提示符下直接执行它。 使用chmode命令修改文件的属性,然后再执行 例如,$chmod a+x example1 $example1 4.3 shell特殊字符 4.3.1 引号 在shell中引号分为三种:双引号、单引号和倒引号。 1.双引号 由双引号括起来的字符,除$、倒引号(`)和反斜线(\)仍保留其特殊功能外,其余字符均作为普通字符对待。 例1 双引号的作用。 [wuxy@local
您可能关注的文档
最近下载
- 释汉语中与名词性成分相关的四组概念.pdf VIP
- 国家社科基金申报书技术路线图24.docx VIP
- 高毒力碳青霉烯类耐药肺炎克雷伯菌诊治专家共识解读PPT课件.pptx VIP
- TB∕T 3355-2023 轨道检测 轨道几何状态动态检测.pdf
- 高毒力碳青霉烯类耐药肺炎克雷伯菌感染诊治与防控专家共识解读2026.pptx VIP
- 毕业设计(论文)-自动贴标机设计.doc
- 北京建筑 图集19BJ1-1 工程做法.docx VIP
- 毕业设计(论文)-贴标机结构设计.docx VIP
- 米家CRMCR卡唛复古机械智能保管箱使用说明书.pdf
- 外研版(2024)八年级上册英语单词默写练习表.docx
原创力文档

文档评论(0)