zoukankan      html  css  js  c++  java
  • 用户变量

      1.用户变量可以是任何不超过20个字母、数字或下划线的文本字符串。用户变量区分大小写。

    值时通过等号赋给用户变量。在变量、等号和值之间不能出现空格

    var1=10

    shell脚本会自动决定变量值的数据类型。

    2.引用一个变量值时需要使用美元符,而引用变量来对其进行赋值时则不要使用美元符

    value1=10
    value2=$value1

     

      反引号

    反引号(`)允许你将shell命令的输出赋给变量。

    必须用反引号把整个命令行命令圈起来:test=‘date’ 

    #!/bin/bash
    today=`date+%y%m%d`
    ls /usr/bin -al > log.$today

    重定向输入和输出

    1.输出重定向

    重定向最基本的类型是将命令的输出发到一个文件中。(>)

    command>outputfile

    date>test6

    如果输出文件已经存在,则重定向操作符会用新的文件数据覆盖已经存在的文件:

    要想将命令的输出追加到已有文件中,可以用双大于号(>>)来追加数据:

    date >> test6

    2.输入重定向------》将文件的内容重定向到命令。(<)

    command<inputfile
    wc<test6

    wc命令提供了对数据中文本的技术,默认输出3个:

    1.文本的行数
    2.文本的词数
    3.文本的字节数

    管道

    command1|command2

    将一个命令的输出重定向到另一个上。linux系统实际上会同时运行两个命令,在系统内部将他们连起来,在第一个命令产生输出的同时,输出会被立刻送给第二个命令。传输数据不会用到任何中间文件或缓冲区域。

    expr命令

    expr 5 * 2

    注意:乘号利用反斜线(转义字符)来识别容易被shell错误解释的任意字符。

    在bash中,将一个数学运算结果赋给某个变量时,你可以用美元符和方括号($[operation])将数学表达式圈起来。

    如:

    var1=$[1+5]

    注意:在使用方括号来计算公式时,不用担心shell会误解乘号或其他符号。shell知道它不是通配符,因为在括号内。

    var2=$[$var1*2]

    但bash只支持整数运算。

    bash计算器:简称bc。允许你在命令行输入浮点表达式、解释表达式、计算并返回结果的一种编程语言。

    bc
    12*5.4
    quit

    要退出bash计算器,你必须输入quit。

    浮点运算是由一个内建的称为scale的变量控制。你必须将这个值设置为结果里你想要的小数后的位数,否则你不会得到想要的结果的:

    3.44/5
    0
    scale=4
    3.44/5
    .6880
    quit

    scale变量的默认值是0.在scale值被设置前,bash计算器输出的没有小数点后的位置。

    bash计算器还能支持变量:

    var1=10
    var1*4
    40
    var2=var1/5
    print var2
    2
    quit

    一旦变量的值被定义了,你就可以在整个bash计算器会话中使用变量了。

    在脚本中使用bash:

    可以利用反引号来运行bc命令并将输出赋给一个变量。

    var=`echo “options;expression” | bc`

    第一个options允许你来设置变量,如果你需要设置不止一个变量,可以用分号来分开他们。

    var1=100
    var2=45
    var3=`echo "scale=4;$var1 / $var2" |bc`
    echo The answer for this is $var3

    这个方法适合较短的运算,当较长的运算时,最好利用内联输入重定向。

    var=`bc <<  EOF
    options
    statements
    expressions
    EOF
    `

    EOF文本字符串标识了内联重定向数据的开始和结尾。记住仍然需要反引号来将bc命令的输出赋给变量。

    ar1=10.46
    var2=43.67
    var3=33.2
    var4=71
    
    var5=`bc << EOF
    scale = 4
    a1 = ($var1*$var2)
    b1 = ($var3*$var4)
    a1+b1
    EOF
    `
    echo reslut is $var5

    注意:在bash计算器中创建的变量只在bash计算器中有效,不能在shell脚本中使用

    查看退出状态码

    $?专属变量来保存上个执行的命令的退出状态码。

     date
    Mon Nov  7 23:08:39 HKT 2016
     echo $?
    0

    按照惯例,一个成功结束的命令的退出状态码是0,如果一个命令结束时有错误,退出状态码中就会有一个正数值:

     asdfg
    bash: asdfg: command not found
    echo $?
    127

    无效命令会返回一个退出状态码127.

    exit命令

  • 相关阅读:
    客户端与服务器持续同步解析(轮询,comet,WebSocket)
    JQuery批量上传插件Uploadify使用详解及参数说明
    win7下安装配置tomcat,java运行环境
    我在Facebook工作的十大经验分享
    jquery submit方法在IE6下的诡异bug
    小练一下canvas版简单时钟与css3版漂亮时钟
    全面解析jquery实现回车键提交表单
    IE8页面加载速度测试
    微软发布Visual Studio 2008 SP1
    开发人员为什么要支持非IE浏览器的四个故事
  • 原文地址:https://www.cnblogs.com/Caden-liu8888/p/6017543.html
Copyright © 2011-2022 走看看