文档详情

UNIX-shell编程.ppt

发布:2017-11-27约1.22万字共56页下载文档
文本预览下载声明
UNIX-shell编程 Shell概述 Bourne shell Korn shell C shell Shell 概述 shell特点 把已有命令进行适当组合,构成新的命令;而组合方式很简单。 可以进行交互式处理,用户和UNIX系统之间通过shell进行交互式会话,实现通信。 灵活地利用位量参数传递参数值。 结构化的程序模块.提供了顺序流程控制、条件控制、循环控制等。 提供通配符、输入/输出重定向、管道线等机制,方便了模式匹配、I/O处理和数据传输。 便于用户开发新的命令,利用shell过程可把用户编写的可执行程序与UNIX命令结合在一起,当作新的命令使用。 提供后台处理方式,不用打断前台工作。 版本 Bourne shell(sh) ATT Bell实验室 Slephen Bourne C shell(csh) Berkeley Bill Joy Korn shell(ksh) ATT Bell实验室 David Korn Shell处理命令行和执行命令行 Shell程序示例 直接命令输入 ls –l /usr/meng 执行shell程序文件 Shell脚本的建立和执行 Shell脚本 使用vi编辑shell脚本 执行shell脚本的方式 输入定向到shell $ sh 脚本名 以脚本名作为shell参数 $ /bin/sh 脚本名 [参数] $ .脚本名[参数] 将shell脚本改为可执行权限 $ chmod a+x ex2 $ ex2 强制当前shell执行Bourne shell 脚本 #! /bin/sh Bourne Shell程序设计 Shell变量 Shell中的特殊字符 参数置换变量 控制结构 Shell特殊命令 变量 用户定义的变量 变量名=字符串 变量名的命名规则 “=”两边不能有空格 使用变量方法 引用变量数值 $变量名,或${变量名} 变量赋值 输入输出命令 read命令 从标准输入中读取数据,然后赋给制定变量 read 变量1 [变量2……] read 变量 n echo命令 将其后的参数在标准输入输出上输出,个参数间以空格隔开,以换行符终止 \b 光标退一个字符位置 \c 光标出现在参数的最后位置 \f 换页 \r 回车 \t 制表符 \v 垂直制表符 \\ 打印反斜线 $echo “Enter the file name- \c” 位置参数 根据在命令行出现的位置次序来确定参数 $0,$1,$2,…,$9。其中,$0对于命令名或shell脚本名 set m1.c m2.c,将$1赋值为m1.c, $2赋值为m2.c 移动位置参数 shit n 将位置参数左移n位(不包含$0) 预先定义的特殊变量 $# 参数个数 ex5 m1.c m2.c $#=2 $? 返回值 $$ 当前进程号 $! 在后台运行的最后一个进程号 $_ 由当前shell设置的执行标志名组成的字符串 $* 命令行中给出的所有位置参数字符串 $@ 与S*基本相同 “$@”表示位置参数为”f1”f2”f3”,而“$*”为“f1 f2 f3” 环境变量 HOME 用户注册主目录名 cat $HOME/f1 IFS 内部字段分隔符 MAIL 用户存放信件的文件路径名 PATH 指定查找命令的路径 PATH=:/bin:/usr/bin PS1 主提示符 “$ ” PS2 次提示符 “ ” SHELL 当前shell的路径 TERM 终端的类型 ansi vt100 HZ 每秒时钟的中断次数 TZ 时区 LOGNAME 用户注册名 MAILCHECK 多长时间检查邮件是否到达 MAILPATH 表示各个邮箱路径 export语句与环境设置 export语句 export [变量名…] .profile 设定和输出一些环境变量 进入系统都要执行的命令 环境变量的设置和显示 变量=值 export和env、printenv set命令 显示迄今为止所定义的全部变量 设定位置参数值 改变执行shell脚本时的选项设定 set -标记参数 #设置标记 set +标记参数 #关闭标记 标记参数 x 在完成参数在各命令行中的替换并在执行该命令行之前,先显示该行内容。行首“+”。 v 使
显示全部
相似文档