zoukankan      html  css  js  c++  java
  • shell 脚本 功能性语句 read,expr,test

    1. read 从终端输入数据赋值给变量
        read val  把读入的数据存放到val中

    #!/bin/bash
    
    echo -n "please input two number :"   
    read A B
    echo "$A = $A $B = $B"
    
    #-p 输出提示信息
    read -p "please input two number : " A B
    
    #-t 在设定的时间范围内输入,如果时间到达还没输入,不给变量赋值直接结束
    read -t 5 -p "please input two number :" A B
    
    #-n 在设定的字符长度内容输入,如果达到字符长度,直接结束并赋值,没有没有达到,需要自己敲回车,输入是自带空格的
    read -n 5 -p "please input two number :" A
    echo "$A = $A"
    
    #-s隐藏输入的内容
    read -s -p "please input two number :" A B
    echo "$A = $A $B = $B"
    

     

     2. expr  算术运算命令,+ - * / %

    注意事项:(1)  * 号要加转译字符才能使用

           (2) 双引号使特殊符号没有了特殊意义,除了$ `

           (3) 单引号使特殊符号没有了特殊意义

    #!/bin/bash
    
    # 注意空格 不能多也不能少
    A=`expr 10 + 20`
    echo "$A = $A"
    
    B=`expr 10 - 20`
    echo "$B = $B"
    
    # 乘号需要转译
    C=`expr 10 * 20`
    echo "$C = $C"
    
    D=`expr 180 / 20`
    echo "$D = $D"
    
    E=`expr 10 % 20`
    echo "$E = $E"
    
    # 注意 + 前后不能有空格
    let F=100+2000
    echo "$F = $F"
    
    # + 左右空格随意
    G=$((16+35))
    echo "$G = $G"
    
    H=$[16 +65]
    echo "$H = $H"
    

     运行结果:

    3. test   测试整数, 字符串 , 文件

    测试 字符串、整数、文件属性
    (1)--字符串测试
      s1 = s2 测试两个字符串的内容是否完全一样
      s1 != s2 测试两个字符串的内容是否有差异
      -z s 测试字符串的长度是否为0
      -n s 测试字符串的长度是否不为0
    (2)--整数测试
      a -eq b 测试a和b是否相等
      a -ne b 测试a和b是否不相等
      a -gt b 测试a是否大于b
      a -ge b 测试a是否大于等于b
      a -lt b 测试a是否小于b
      a -le b 测试a是否小于等于b
    (3)--文件测试
      -e 测试文件是否存在
      -s 测试文件是否不为空
      -b 判断是否是一个块设备文件
      -c 判断是否是一个字符设备文件
      -d 判断是否是一个目录
      -f 判断是否是一个普通文件
      -L 判断是否是一个符号链接
      -S 判断是否是一个套接字文件
      -p 判断是否是一个管道文件

      file1 -nt file2 file1是否比file2文件的修改时间新
      file1 -ot file2 file1是否比file2文件的修改时间旧
      file1 -ef file2 两个文件的inode是否一致,可以判断是否为硬链接

  • 相关阅读:
    状态压缩 + 暴力 HDOJ 4770 Lights Against Dudely
    简单几何(推公式) UVA 11646 Athletics Track
    简单几何(四边形形状) UVA 11800 Determine the Shape
    简单几何(求交点) UVA 11437 Triangle Fun
    计算几何模板
    简单几何(相对运动距离最值) UVA 11796 Dog Distance
    简单几何(求划分区域) LA 3263 That Nice Euler Circuit
    覆盖的面积 HDU
    Desert King 最小比率生成树 (好题)
    约会安排 (区间合并)毒瘤题
  • 原文地址:https://www.cnblogs.com/electronic/p/10832033.html
Copyright © 2011-2022 走看看