zoukankan      html  css  js  c++  java
  • Linux shell变量

    一、本地变量
    --本地变量是在用户现有的shell生命周期的脚本中使用
    --本地变量详解:用户通过终端登录服务器,服务器会创建一个会话期并且启动一个shell程序,用户每登录一次,
      就会启动一个shell,所以在一个会话期里可能会启动多个shell程序
      当用户在shell程序中定义了一个shell变量,该shell变量的生存周期是用户连接到服务器到用户关闭shell
      用户关闭shell可以有两种方法,①切换用户(切换用户时,会关闭当前用户的shell,再次启动另一个shell)
      ②关闭终端
    --variablename=value
        定义本地变量:MYVAR="test"  注意"="左右不要有空格,变量的值必须加上双引号,数字可以例外
        使用本地变量$MYVAR     用法:echo $MYVAR  或者 echo ${MYVAR}
    --set显示本地所有的变量
    --readonly variablename定义只读变量
      只读变量不能赋值
    二、环境变量
    --环境变量用于所有用户进程(经常成为子进程)。登录进程称为父进程。shell中执行的用户进程均为子进程。
    不像本地变量(只用于现在的 shell),环境变量可用于所有子进程,这包括编辑器、脚本和应用程序。
    --$HOME/.bash_profile(/etc/profile,所有用户都使用profile) --export 声明环境变量 export myvar="ttt" --env 查看环境变量
    三、变量替换(显示变量)
    --用变量的值替换它的名字 
    --在变量前加$,使用echo命令可以显示单个变量的值
    --echo ${MYVAR} 或者 echo $MYVAR
    --${variablename}    显示实际值
    --${variablename:+value}    若设置了variablename则显示用户自定义信息value;若未设置variablename,则显示空
    --${variablename:?value}    若设置了variablename则显示variablename的值;若未设置variablename,则显示用户自定义信息value(相    
                                当于一种提示信息)
    --${variablename:-value}    结果同上
    --${variablename:=value}    若设置了variablename则显示variablename的值;若未设置variablename,则设置variablename的值为用户    
                                自定义信息value,并且显示variablename的值
    四、unset
    --清除变量
    --unset testvar
    --readonly变量不能被清除
    五、位置变量
    --$1
    --详情见 Linux Shell编程一
    六、标准变量
    --bash默认建立了一些标准环境变量,可在/etc/profile中定于
    --HOME    属主目录
    --LOGNAME    登录用户名
    --TERM    登录服务器,终端类型vt100
    --PATH 标准变量
    --PS1(数字1)    提示符
      echo $PS1    打印[u@h W]$
      u代表用户名  h代表主机名  w代表当前目录
      例如:[test@HP-Linux 1]$ 
    --PS2 
      ">" 表示一条命令没有写完,自动换行后,shell提示符,""是续行符
       例子:ls -lt
       > | wc -w
    七、特殊变量
    --$#    传递脚本的参数个数(不包含程序本身./runc,这和c语言不同)
    --$*    所有的参数列表,次选项参数可以超过9个
    --$$    脚本运行的当前进程ID号
    --$|    后台运行的最后一个进程的进程ID号
    --$@    与$#相同,但是使用时加引号,并爱引号中返回每个参数
    --$-    显示shell使用的当前选项,与set命令功能相同
    --$?    显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误
    八、影响变量的命令
    --declare    设置或显示变量
        -f    只显示函数名
        -r    创建只读变量
        -x    创建转出变量
        -l    创建整数变量
    --shife [n]  整体参数左移n个
  • 相关阅读:
    How to run Java main class and pass application arguments in Maven?
    【转】三年后再反思我的" Java Web项目管理得失谈"
    Object.keys()
    angular $resource 的 get请求 和 post请求
    vue 自定义 移动端筛选条件
    获取当前时间 YYYY-MM-DD
    vue-router 二级路由
    blob 对象 实现分片上传 及 显示进度条
    js性能优化之函数节流(分流函数)
    vue + vue-lazyload 实现图片懒加载
  • 原文地址:https://www.cnblogs.com/zhanggaofeng/p/6099557.html
Copyright © 2011-2022 走看看