zoukankan      html  css  js  c++  java
  • Shell脚本变量定义

    http://blog.csdn.net/qyf_5445/article/details/8886071

    自定义变量
    bash中变量无类型区分
    aa=abc123    定义变量并赋值abc123
    aa=          定义空变量或者清空变量aa,但变量还存在
    export test="hello world"  设定环境变量test
    export或者export -p        显示所有环境变量
    declare / typeset 选项 变量名
    declare 或 typeset 有同样的功能:指定变量属性。如果使用 declare 后面并没有接任何参数,那么 bash 就会主动的将所有的变量名称与内容通通叫出来,就好像使用 set 一样! 
    选项:
    -a 将后面的变量定义成为数组 (array)
    -i 将后面的变量定义成为整数(integer)
    -x 将后面的变量变成环境变量,同export 一样,
    -r 将后面的变量设定为只读 ,该变量不可被更改内容,也不能 unset
    -f 列出脚本中的函数
    readonly用来设置只读变量
    readonly 变量名
    readonly -f 函数名称
    readonly -a 数组变量
    变量间接引用 eval var1=$$var2

    Shell支持自定义变量。

    定义变量

      定义变量时,变量名不加美元符号($),如:

      代码如下:
      variableName="value"

       注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言都不一样。同时,变量名的命名须遵循如下规则:

    •首个字符必须为字母(a-z,A-Z)。
    •中间不能有空格,可以使用下划线(_)。
    •不能使用标点符号。
    •不能使用bash里的关键字(可用help命令查看保留关键字)。

    变量名外面的花括号是可选的,加不加都行,加花括号是为了帮助解释器识别变量的边界,比如下面这种情况:

     代码如下:

    for skill in Ada Coffe Action Java
    do
        echo "I am good at ${skill}Script"
    done

    如果不给skill变量加花括号,写成echo "I am good at $skillScript",解释器就会把$skillScript当成一个变量(其值为空),代码执行结果就不是我们期望的样子了。

    推荐给所有变量加上花括号,这是个好的编程习惯。

    重新定义变量

    已定义的变量,可以被重新定义,如:

    代码如下:

    your_name="tom"
    echo $your_name

    your_name="alibaba"
    echo $your_name

     这样写是合法的,但注意,第二次赋值的时候不能写$your_name="alibaba",使用变量的时候才加美元符($)。

  • 相关阅读:
    xadmin 安装
    Python
    使用免费证书安装 ipa 到真机
    Jupyter PPT
    Javascript注意点
    论文哪里找?
    神经网络术语
    PyTorch上路
    DCGAN实现
    数据库和数据挖掘领域的会议和期刊
  • 原文地址:https://www.cnblogs.com/guosj/p/4568307.html
Copyright © 2011-2022 走看看