引用和流程控制

来源:互联网 发布:tengine windows安装 编辑:程序博客网 时间:2024/06/18 05:24
引用
引用主要有三种:反斜线引用,单引号引用和双引号引用
反斜线引用:echo $1234
结果是234
     echo I owe \$1234
result: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 list1
then
        list2
elif list3
      list4
else
      list5
fi
学过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
                    ;;
esac

eg:
#!/bin/bash
FRUIT=kiwi
case "$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

            
<script>window._bd_share_config={"common":{"bdSnsKey":{},"bdText":"","bdMini":"2","bdMiniList":false,"bdPic":"","bdStyle":"0","bdSize":"16"},"share":{}};with(document)0[(getElementsByTagName('head')[0]||body).appendChild(createElement('script')).src='http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion='+~(-new Date()/36e5)];</script>
阅读(870) | 评论(0) | 转发(0) |
0

上一篇:变量和替换

下一篇:循环

相关热门文章
  • APP开发流程,你知道多少...
  • app开发需要多少钱
  • BLE-NRF51822教程14-adc和电池...
  • Linux设备驱动程序学习(6)-...
  • UBOOT-2012-10在OK6410平台的...
  • A sample .exrc file for vi e...
  • IBM System p5 服务器 HACMP ...
  • 游标的特征
  • DB2 9 应用开发(733 考试)认...
  • busybox的httpd使用CGI脚本(Bu...
  • linux dhcp peizhi roc
  • 关于Unix文件的软链接
  • 求教这个命令什么意思,我是新...
  • sed -e "/grep/d" 是什么意思...
  • 谁能够帮我解决LINUX 2.6 10...
给主人留下些什么吧!~~
原创粉丝点击