本文共 1812 字,大约阅读时间需要 6 分钟。
引用 引用主要有三种:反斜线引用,单引号引用和双引号引用反斜线引用:echo $1234结果是234 echo I owe \$1234result:I owe $1234注意:$1是一个特殊的shell变量单引号引用:echo '<*^$^*()_+?:::'result: <*^$^*()_+?::: 总之,单引号的引用记住,在单引号内所有字符均被引用,相当于在每一个字符前放一个反斜线一样,但不能在嵌入的单引号前再用单引号。双引号引用:双引号删除了除以下字符外所有其他字符的特殊含义$:用于参数替换``:后引号用于命令替换\$:打开文字美元符号\\:使用嵌入的后斜线\':打开文字后引号\":使用嵌入的双撇号所有的其他“\”都是文字符,不具特殊含义mail -s Meeting tomorrow fred jane < meeting.notice mail -s Meeting\ tomorrow fred jane < meeting.notice mail -s 'Meeting tomorrow' fred jane < meeting.notice mail -s "Meeting tomorrow" fred jane < meeting.notice以上四句中只有后三句是正确的。流控制在c语言中的1是真,0是假,而这里1是假,0是真if语句if list1then list2elif list3 list4else list5fi学过c后,这就很容易理解了。test的使用文件测试:这里我只列出了常用的一些文件测试选项-e文件存在则为真-d文件存在且是一个目录,则为真-b文件存在且为一个块特殊文件,则为真字符串比较:-z string 若string长度为0,则为真-n string 若string长度不为0,则为真string1 = string2 若两个相等则为真string1 !=string2 若两个不相等则为真注意其中的空格。数字比较:test int1 operator int2或 [ int1 operator int2 ]若int1和int2中有一个为字符串而不是整数,则按零对待常用的数字比较选项-ne 不等于则为真-eq 等于则为真-lt 小于 则为真 -le 小于等于 则为真 -gt 大于 则为真 -ge 大于等于 则为真case的用法case word in pattern 1) list1 ;; pattern 2) list2 ;;esaceg:#!/bin/bashFRUIT=kiwicase "$FRUIT" in apple) echo "apple" ;; pear) echo "pear" ;; kiwi) echo "kiwi"esac#case语句的真正强大功能是它里面可以用通配符if [ "$FRUIT" = apple ]then echo "apple"elif [ "$FRUIT" = pear ]then echo "pear"elif [ "$FRUIT" = kiwi ]then echo "kiwi"else echo "no one"fi上一篇:
下一篇:
转载地址:http://ldmti.baihongyu.com/