zoukankan      html  css  js  c++  java
  • shell中变量基础知识

    变量类型
    字符串 a='xx'
    数字 i=1314
    布尔 true false
    数组 array=(a b c)
    函数 foo(){echo hello world}
    高于4.x的shell没有hash词典功能

    shell中的一些预变量

    $$ 当前执行的进程PID
    $0 当前执行的shell文件名
    $# 传递给shell程序的所有位置参数个数
    $* 传递给shell程序的所有位置参数的值
    $? 上一条命令执行的返回码 (0表示成功)
    $! 上一条后台进程的pid
    $1~$9 对应shell程序中前9个行参数
    ${10}~${n} 对应shell程序中更多的行参数(只对ksh)

    $PWD:当前目录
    $USER:当前是谁
     $HOME:当前主目录
     ~:当前主目录

    $PATH:当前环境

    变量的定义

    a=1  #数字定义
    b=seveniruby    # 字符串定义
    d="hello from testhome"   # 字符串定义
    e='hello from "清华大学"'   # 字符串定义

    arr=(1 2 3 4 jkjkfjskd)   # 数组定义,以空格分隔

    =左右不要有空格
    如果内容有空格,需要使用单引号或者双引号
    双引号支持转义$开头的变量会被自动替换

    变量的使用

    数字和字符串使用

    $a或者${a}

    数组索引的使用

    arr = (1 2 3 4 dsjfgsh)

    获取固定下标1的值${arr[1]}

    获取数组的所有值${arr[@]}

    获取数组的长度${arr[*]}或者${arr[@]}

    数组的增删改查

    改:

    arr[1]=100    #此时arr为(1 100 3 4 dsjfgsh)

    增加:

  • 相关阅读:
    C
    B
    A
    G
    BZOJ_1208_&_Codevs_1258_[HNOI2004]_宠物收养所_(平衡树/set)
    Codevs_1230_元素查找_(set/Hash)
    POJ_2503_Babelfish_(Trie/map)
    POJ_2001_Shortest_Prefixes_(Trie)
    BZOJ_3670_[NOI2014]_动物园_(kmp)
    BZOJ_3196_二逼平衡树_(树套树,线段树+Treap)
  • 原文地址:https://www.cnblogs.com/rockluoye/p/12841496.html
Copyright © 2011-2022 走看看