shell脚本入门讲述.ppt

  1. 1、本文档共49页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
shell脚本入门讲述

+ - * / % 分别对应加、减、乘、除、取余 只需将特定的算术表达式用 “$((” 和 “))” 括起来。a=$((4-2)) a的值为2 a=10 b=2 echo $(($a+$b)) echo $(($a-$b)) echo $(($a*$b)) echo $(($a/$b)) echo $(($a%$b)) shell的内置declare命令,可以声明变量的类型 declare –i声明的变量,bash会认为它是整数。此时加减乘除不用放在$(())中做运算,可以直接做运算。 a1=10 b1=20 c1=$a1*$b1 echo $c1 declare -i a2=10 declare -i b2=20 declare -i c2=$a2*$b2 echo $c2 用bash内嵌的read命令 功能:读取来自键盘的输入,并传给变量 用法:read [选项] 变量名 选项: -p 字符串 后面接字符串给出提示 -t 时间 后接等待的秒数,即不会一直等待用户输入 #echo “input your name” #read name 上面两行可以用下面一行代替 #read -p “input your name” name #echo “my name is $name” 代表AND,即“与” ||代表OR,即“或” 命令test 和判断符[ ] 功能:结合后三页的选项用于字符串、数字、文件目录的测试 测试为真,则返回0,假返回1,可以通过$?得到返回值。常和后面讲到的判断、循环语句结合在一起使用。 中括号[ ]内的每个组件之间都需要有空格键来分隔 命令执行情况 说明 cmd1 cmd2 1. 若 cmd1 执行完毕且正确执行($?=0),则开始执行 cmd2。 2. 若 cmd1 执行完毕且为错误 ($?≠0),则 cmd2 不执行。 cmd1 || cmd2 1. 若 cmd1 执行完毕且正确执行($?=0),则 cmd2 不执行。 2. 若 cmd1 执行完毕且为错误 ($?≠0),则开始执行 cmd2。 检测文件属性 -f 检测文件是否存在且是普通文件 -d 检测目录是否存在 -e 检测文件是否存在,可以是任何类型文件 -r 文件对于该用户是否具备可读属性 -w 是否可写 -x 是否可执行 例如: 判断文件~/.bashrc是否存在 test -f ~/.bashrc 又可表示为 [ -f ~/.bashrc ] 判断文件~/.bashrc是否可读 test -r ~/.bashrc 又可表示为 [ -r ~/.bashrc ] 练习:判断用户输入的文件是否存在,若存在输出yes否则输出no 算术运算: -eq 等于 -ne 不等于 -lt 小于 -gt 大于 -le 小于或等于 -ge 大于或等于 a=2 b=2 test $a -eq $b echo “a equeal to b” 上式等价于 [ $a -eq $b ] echo a equeal to b 字符串运算符: == 字符串相同则为真 != 字符串不相同则为真 -z $str 若变量str的长度等于0则为真 -n $str 若变量str的长度大于0则为真,-n可去掉 多重条件判断 -a 要求左右两个语句都成立时才为真。例如test -r file -a -x file 则file同时具有读和执行权限时才为真。上式等价于 test-r file test -x file 若前一条语句执行后为假,即返回值非零,后一条语句就不再执行。 -o 任意一条语句为真就都为真。例如test -r file -o -x file 则file具有读或写的权限就为真。上式等价于 test -r file || test -x file 若前一条语句执行后为真,后一条语句就不再执行。 ! 取反状态。如test ! -r file 当file不可读时,才为真。注意:符号“!”放在命令或shell函数的前面,表示对命令返回码取反,例如 “! test -r file”意思是若file可读,这整条语句的返回码非零。 条件判断: 最简单的条件判断 if 表达式 ; then 语句 fi 若表达式为真,则执行下面then到之间fi的语句 表达式可以是多条命令或函数,他们之间用 或 ||彼此相连 if语句可以写成或||的组合语句。如下左右两条语句功能相同。 if语句可以嵌套使用 #!/bin/bash if [ $#

文档评论(0)

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

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

1亿VIP精品文档

相关文档