zoukankan      html  css  js  c++  java
  • SHELL 学历笔记

    Shell
    变量
    变量名区分大写小,规范大写,$变量名获取
    $变量名
    ${变量名}
    变量名不能以数字开头
    等号两边不能有空格
    命令复制给变量: `` , $()
    交互式变量赋值:read -n -p -t 变量名
    declare 给变量赋予属性(只读,整形, x 环境变量)
    本地变量,全局变量,环境变量,系统变量
    四则运算
    $(())
    expr
    let
    $[]
    dirname:当前脚本目录
    basename:文件名
    流程控制
    条件控制
    [ 表达式 ]
    test 表达式
    [[ 表达式 ]] : 当判断字符串是否为空时,用此方式
    整数判断
    -eq
    -ne
    -ge
    -le
    -gt
    多重判断
    逻辑与: a / &&
    逻辑或: o / ||
    if
    if [ condition ];then
    .....
    fi
    if...elif...else
    for
    循环方式
    列表循环
    a b c
    {1.10} {1,2,10}
    seq 10/seq 2 10/seq 1 2 10
    不带列表循环
    for x (x 为参数个数)
    类C 风格循环
    for (( expr1,expr2,expr3 ))
    do
    command
    done
    for((i=1;i<5;i++))
    while
    until
    case
    数组
    定义
    普通数组:数字作为索引下标
    关联数组:字符作为索引下标(declare -A 数组名)
    初始化
    数组名[index]=value
    数组名=(value1 value2 value3)
    关联数组一次初始化多个值:declare -A sy1=([s]=s1 [s s]=sy2 [y]=sy3)
    数组获取
    获取数据元素:${数据组名[index/*]}
    元素个数:${#数字名[*]}
    关联数组获取全部元素下标:echo ${!数组名[*]}
    sed
    命令行模式
    1. 所有命令再单引号里
    脚本模式
    sed -f 脚本.sh
    e: 多项编辑
    r:扩展正则
    i: 修改源文件
    awk
    格式:awk 选项 '命令' 文件
    选线:
    F : 定义分隔符,默认是空格
    v:定义变量并赋值(使用变量不需要加$)
    内部变量
    $0
    $1,$2,$3....
    NF 当前列数
    $NF 最后一列
    FNR/NR 行号
    FS:定义间隔符
    OFS:定义输出间断分隔符,默认是空格
    RS: 输入记录分隔符
    流程控制
    if
    {if(表达式){执行语句1;语句2} }
    {if(表达式){语句1;语句2;...} else {语句1;语句2;...}}
    awk '{for();}'

  • 相关阅读:
    Python生成测试数据-Faker(非LOL选手-李相赫)
    requests-html库轻体验-HTMLSession下载表情包
    【转载-学习】[一个前端必会的 Nginx免费教程
    Requests接口测试库-官网快速上手
    Java 环境变量配置
    Python多线程-ThreadLocal
    Python多线程
    day11 装饰器---函数的使用方法
    day10.函数,函数的参数
    day9文件操作
  • 原文地址:https://www.cnblogs.com/shaoyu19900421/p/13381403.html
Copyright © 2011-2022 走看看