zoukankan      html  css  js  c++  java
  • shell编程实例B01

    1、查看用户、密码信息

    su - username
    用于完全切换用户,最好不要用su username
    
    $USER:当前用户名
    $UID:当前用户ID
    
    cat /etc/group:查看所有用户组信息
    cat /etc/passwd:查看所有用户密码信息
    
    passwd -S username:查看登录账号密码信息(仅限root用户执行)

    2、字符串截取及切割

    子串截取的三种方法:
    
    
    (1) ${var_name:start:length}     / 从0开始计位数!!!
    
    phone='15170016044'       要求提取7001
    echo${#phone}        显示11      /  加#号统计这个变量有多少位
    echo${phone:0:4}  = echo${phone::4}        / 起始位置为0可以省略,4是截取长度
    echo${phone:3:4}   显示 7001  
    
    (2) expr substr "$phone" start  length     /  变量的引号可要可不要
    
    expr substr "$phone"   4  4       / 显示7001 
    
    (3) echo $phone | cut -b  start-end      /  从1开始计位数!!!
    
    echo $phone | cut -b   4-7          / 显示7001 
    echo $phone | cut -c   4-7          / 显示7001 
    echo $phone | cut -b   4,5,6,7        / 显示7001
    echo $phone | cut -c   4,5,6,7        / 显示7001
    
    
    例如:
    #!/bin/bash
    
    ID='0123456789qwertyuioplkjhgfdsazxcvbnmQWERTYUIOPLKJHGFDSAZXCVBNM'
    
    echo  ${#ID}     /  62
    num=$[RANDOM%62]     /  0-61     /取的值不能超过ID最高位数
    
    echo  ${ID:$num:1}          
    num=$[RANDOM%62+1]        /  1-62
    echo  $ID  | cut -b  $num
    expr  substr  “$ID”   $num   1

    3、子串替换(详情见链接)

    4、变量初始值处理

    1)只取值,${var:-word}
    
    若变量var已存在且非Null,则返回 $var 的值;否则返回字串“word”,原变量var的值不受影响。
    
    
    2)取值+赋值,${var:=word}
    
    若变量var已存在且非Null,则返回 $var 的值,原变量值不变;否则返回字串“word”,并将此字串赋值给变量 var。

    参考链接:

    https://www.cnblogs.com/minegi/p/12631674.html

    https://www.cnblogs.com/selectztl/p/9523151.html

    https://blog.csdn.net/qq_36441027/article/details/80100615

  • 相关阅读:
    Objective-c Category(类别)
    协议(porotocol)
    类的通用格式
    objective-c 强大的布尔类型
    C 语言函数指针
    c while 循环
    jQuery的deferred对象详解
    exploring the http Object
    div+css定位position详解
    如何给变量取个简短且无歧义的名字
  • 原文地址:https://www.cnblogs.com/BASE64/p/13399936.html
Copyright © 2011-2022 走看看