zoukankan      html  css  js  c++  java
  • shell 命令小结

    1.Shell 既是一种命令语言,又是一种程序设计语言
    2.Shell 脚本(shell script),是一种为 shell 编写的脚本程序
    3.shell脚本第一行: #!/bin/sh

    4.shell变量:
    #注意: 变量名和等号之间不能有空格
    my_name="Peanut"
    #使用变量时,在变量名前加上$
    echo $my_name
    #只读变量
    readonly my_name
    #删除变量(不能删除只读变量)
    myAge=10
    unset myAge

    5.shell字符串:
    ①字符串可以用单引号,也可以用双引号,也可以不用引号
    ②单引号里的任何字符都会原样输出,单引号字符串中的变量是无效的
    str1='HelloWorld'
    ③双引号里可以有变量;双引号里可以出现转义字符
    fruit_name='apple'
    str="I like "$fruit_name"! "
    ④获取字符串长度
    str2="orange"
    echo ${#str2} # 4
    ⑤提取子字符串
    str2="orage"
    echo ${str2:1:3} # rag
    ⑥查找子字符串
    str3="runoob is a great site"
    echo `expr index "$string" io` # 查找字符 i 或 o 的位置(哪个字母先出现就计算哪个):4

    6.shell数组:
    ①用括号来表示数组,数组元素用"空格"符号分割开
    arr1=(value0 value1 value2)
    ②读取数组:${数组名[下标]}
    arr1_value1=${arr1[1]}
    echo ${arr1[@]} # 获取数组中的所有元素:@
    ③获取数组的长度:
    # 取得数组元素的个数
    length=${#array_name[@]}
    # 或者
    length=${#array_name[*]}
    # 取得数组单个元素的长度
    lengthn=${#array_name[n]}

    7.shell注释:
    ①# 表示注释
    ②一段代码用{}括起来,定义成一个函数,不调用就达到注释的效果
    ③多行注释:
    :<<EOF
    注释内容...
    注释内容...
    注释内容...
    EOF

    8.shell函数:
    ①可以带function fun() 定义,也可以直接fun() 定义,不带任何参数
    ②参数返回,可以显示加:return 返回,如果不加,将以最后一条命令运行结果,作为返回值
    ③调用函数时,直接写函数名,后面加上参数
    function helloWorld(){
    echo "第一个值为 $1" # 用
    echo "第二个值为 $2"
    echo "第十个值为 ${10}"
    echo "参数总共 $#个" #传递参数的个数$#
    echo "以一个字符串输出所有参数$*" #以一个单字符串显示所有向脚本传递的参数$*
    }
    helloWorld 1 2 3 4 5 6 7 8 9 10 11 12 13

    function helloFruit(){
    fruit1="apple"
    fruit2="banana"
    string=$fruit1,$fruit2 #字符串直接拼接,不需要加号双引号
    echo $string #函数最后一句为返回值,如果用return,只能返回数值
    }

    result=$(helloFruit) #将函数返回值传给一个参数时,用$()
    echo $result
    result_array=(${result_identify//,/ }) #字符串按,分割成熟组
    fruit1=${result_array[0]} #数组元素用 ${arr[i]}取值
    fruit2=${result_array[1]}



    9.shell随机数:
    #伪随机数RANDOM
    random1=$RANDOM
    echo "$random1"
    #唯一识别码Universally Unique Identifier,获得唯一不重复的随机数
    psd="/proc/sys/kernel/random/uuid"
    vRandom1=$(cat $psd)
    echo "$vRandom1"
    vRandom2=${vRandom1//-/} #去掉随机数中-
    echo "$vRandom2"

  • 相关阅读:
    springmvc(架构、组件、视图解析器的配置)
    springmvc(mvc、springmvc、springmvc入门程序)
    jvm类文件结构解析(访问标志、异常)
    软件工程(项目前期)
    jvm:java类文件结构(字节码文件的解析)
    Mybatis动态sql(if、where、sql、foreach、choose)
    ARM指令系统(CISC与RISC、新建工程)
    pyppeteer之流程解析
    Puppeteer简介及安装
    selenium之前进后退
  • 原文地址:https://www.cnblogs.com/ShyPeanut/p/11265432.html
Copyright © 2011-2022 走看看