基本信息
文件名称:linux基础-14shell编程-功能语句+课件.pptx
文件大小:57.79 KB
总页数:11 页
更新时间:2025-05-26
总字数:约1.91千字
文档摘要

shell编程-功能语句

课程目录说明性语句常用功能性语句测试语句

3shell程序和语句shell程序由零或多条shell语句构成。shell语句包括三类:说明性语句、功能性语句和结构性语句。说明性语句:以#号开始到该行结束,不被解释执行功能性语句:任意的shell命令、用户程序或其它shell程序。结构性语句:条件测试语句、多路分支语句、循环语句、循环控制语句等。

4说明性语句(注释行)注释行可以出现在程序中的任何位置,既可以单独占用一行,也可以接在执行语句的后面.以#号开始到所在行的行尾部分,都不被解释执行.例如:#!/bin/sh##本程序说明#command_1command_2#command_2的语句说明……#下面程序段的说明command_m……command_n#commandn_语句的说明……告诉OS用哪种类型的shell来解释执行该程序

5常用功能性语句(命令)read从标准输入读入一行,并赋值给后面的变量,其语法为:readvar把读入的数据全部赋给varreadvar1var2var3把读入行中的第一个单词(word)赋给var1,第二个单词赋给var2,……把其余所有的词赋给最后一个变量.如果执行read语句时标准输入无数据,则程序在此停留等侯,直到数据的到来或被终止运行。

6应用实例#example1forreadechoInputyourname:\creadusernameechoYournameis$username#example2forreadechoInputdatewithformatyyyymmdd:\creadyearmonthdayechoTodayis$year/$month/$day,right?echoPressentertoconfirmandcontinue\creadanswerechoIknowthedate,bye!

7expr命令算术运算命令expr主要用于进行简单的整数运算,包括加(+)、减(-)、乘(\*)、整除(/)和求模(%)等操作。例如:$expr12+5\*327$expr3-8/2-1$num=9$sum=`expr$num\*6`$echo$sum54反斜线去掉*号的元字符含义反撇号引用命令的运行结果

8test语句test语句可测试三种对象:字符串整数文件属性每种测试对象都有若干测试操作符例如:test$answer=yes变量answer的值是否为字符串yestest$num–eq18变量num的值是否为整数18test-dtmp测试tmp是否为一个目录名

9字符串测试s1=s2 测试两个字符串的内容是否完全一样s1!=s2 测试两个字符串的内容是否有差异-zs1 测试s1字符串的长度是否为0-ns1 测试s1字符串的长度是否不为0

10整数测试a-eqb 测试a与b是否相等a-neb 测试a与b是否不相等a-gtb 测试a是否大于ba-geb 测试a是否大于等于ba-ltb 测试a是否小于ba-leb 测试a是否小于等于b

11文件测试-dname测试name是否为一个目录-ename测试一个文件是否存在-fname测试name是否为普通文件-Lname测试name是否为符号链接-rname测试name文件是否存在且为可读-wname测试name文件是否存在且为可写-xname测试name文件是否存在且为可执行-sname测试name文件是否存在且其长度不为0f1-ntf2测试文件f1是否比文件f2更新f1-otf2测试文件f1是否比文件f2更旧