zoukankan      html  css  js  c++  java
  • shell脚本应用(2)--变量,数值和字符串

    1. 变量
    • 定义,赋值: 
    var=value
    • 引用
    $var,${var}
    • 特殊变量
    $?上条命令状态
    $*/$@所有参数列表
    $#参数个数
    $0执行的命令名称
    $1/${10}第1/10个参数
    1. 数值运算
    1. expr value1 op value2eg. expr $var1 + $var2
    2. $[ value1 op value2 ]eg.$[var1+var2]
    • 变量递更
    let var++自增1
    let var+=2自增2
    • 随机数生成
    echo $RANDOM$RANDOM生成随机数
    • 生成数字序列
    seq first end显示first,first+1,...,end
    seq first step end显示first,first+step,...
    • 小数计算(bc命令)
    echo “45.6×33.2” | bc将运算的字符串传递给bc命令去处理
    1. 字符串操作
    • 子串截取
    1. dirname/basename $path提取$path里面的目录路径/文件名
    2. expr substr $string first length截取$string字串,从first(起始为1)开始,长度为length
    3. ${string:first:length}截取$string子串,从first(起始为0)开始,长度为length
    4. ${string#patten}从左开始匹配patten,从string删除最短的patten
    5. ${string%patten}从右开始匹配patten,从string删除最短的patten
    • 字符串替换
    1. ${string/old/new}将string中第一个old替换为new
    2. ${string//old/new}将string中所有old替换为new
    • 生成随机字符串
    head -1 /dev/urandom | md5sum | cut -c1-8生成长度为8的随机字符串

     

     
  • 相关阅读:
    实现一个简单的Form授权 How to: Implement Simple Forms Authentication
    寄存器寻址方式
    HDU2094 产生冠军
    HDU1060 Leftmost Digit 数论
    HDU1496 Equations [hash]
    HDU1298 T9 字典树 DFS
    HDU1051 Wooden Sticks
    HDU1800 Flying to the Mars
    HDU1285 确定比赛名次 拓扑排序
    HDU1716 排列2 组合数
  • 原文地址:https://www.cnblogs.com/happy-island/p/3569163.html
Copyright © 2011-2022 走看看