美文网首页
【Shell】变量

【Shell】变量

作者: HeloWxl | 来源:发表于2023-04-24 15:34 被阅读0次

    变量

    Bash 中没有数据类型,bash 中的变量可以保存一个数字、一个字符、一个字符串等等。 同时无需提前声明变量,给变量赋值会直接创建变量。

    变量命名原则

    • 命名只能使用英文字母,数字和下划线,首个字符不能以数字开头。
    • 中间不能有空格,可以使用下划线(_)。
    • 不能使用标点符号。
    • 不能使用 bash 里的关键字(可用 help 命令查看保留关键字)。

    声明变量

    访问变量的语法形式为:${var}$var

    变量名外面的花括号是可选的,加不加都行,加花括号是为了帮助解释器识别变量的边界,所以推荐加花括号。

    例如:

    word="hello"
    echo ${word}
    # Output: hello
    

    只读变量

    使用 readonly 命令可以将变量定义为只读变量,只读变量的值不能被改变。

    aword="hello"
    echo ${aword}
    readonly aword
    # aword="bye bye"  # 如果放开注释,执行时会报错
    

    删除变量

    使用 unset 命令可以删除变量。变量被删除后不能再次使用。
    unset 命令不能删除只读变量

    dword="hello"  # 声明变量
    echo ${dword}  # 输出变量值
    # Output: hello
    
    unset dword    # 删除变量
    echo ${dword}
    # Output: (空)
    

    变量类型

    • 局部变量 - 局部变量是仅在某个脚本内部有效的变量。它们不能被其他的程序和脚本访问。

    • 环境变量 - 环境变量是对当前 shell 会话内所有的程序或脚本都可见的变量。创建它们跟创建局部变量类似,但使用的是 export 关键字,shell 脚本也可以定义环境变量。

    常见的环境变量:

    变量 描述
    $HOME 当前用户的用户目录
    $PATH 用分号分割的目录列表,shell回到这些目录中查找命令
    $PWD 当前工作目录
    #RANDOM 0到32767之间的整数
    $UID 数值类型,当前用户的用户ID
    $PS1 主要系统输入提示符

    相关文章

      网友评论

          本文标题:【Shell】变量

          本文链接:https://www.haomeiwen.com/subject/wcbujdtx.html