zoukankan      html  css  js  c++  java
  • 架构师的成长之路初片-shell-(字符串的处理)

    五,字符串的处理

    1, 字符串的截取

    ${变量名:截取起始位置:截取长度}

    编写脚本,可以随机获取变量x中的一位字符

    #!/bin/bash

    x=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTU

    VWXYZ0123456789   //先定义变量x,里面有62个字符

    n=$[RANDOM%62]   //利用RANDOM随机除以62取余数

    可以得到0~61之间的随机数

    echo ${x:n:1}   //随机截取变量x中的一位字符

    例子:

    编写脚本,可以获取50个随机的8位字符串(将来可以作为为用户配置随机密码时使用)

    #!/bin/bash

    x=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789    //定义变量

    for j in {1..50}      //执行50次

    do

      for i in {1..8}     //循环8

      do

        n=$[RANDOM%62]   //得到0-61之间的随机数

        a=${x:n:1}   //随机截取一个x中的字符存储到变量a

        pass=$pass$a  //将每次获取的随机字符存储到变量pass

      done

      echo $pass   //循环完8次之后,喊出最终结果,就得到了18位的字符串

      unset pass  //每次获取完8位字符串,将变量清空,避免下次变成16位长

    done

    -----------------------------------------------------------------------------------------------------------

    字符串的改、删等操作

    a=asdqwerwasdf

    echo ${a/q/9}           /把a内的q换成9

    echo ${a//ww/6}      //把两个w换成6

    未完待续....................

  • 相关阅读:
    [题解] [NOIP2008] 双栈排序——关系的冲突至图论解法
    [搬运] [贪心]NOIP2011 观光公交
    [总结] 最短路径数问题
    [持续更新]一些zyys的题的集合
    [教程]Ubuntu下完整配置自动壁纸切换
    在NOILINUX下的简易VIM配置
    [模板]ST表浅析
    21、Android--RecyclerView
    20、Android--GridView
    19、Android--ListView
  • 原文地址:https://www.cnblogs.com/ahaocloud/p/14374736.html
Copyright © 2011-2022 走看看