• Linux学习-变量


    Shell

    变量

    • 变量名的命名规则

      • 字母、数字、下划线
      • 不以数字开头
    • 给变量赋值

      • a=123 "="左右两边不允许出现空格,系统会认为左边是一条命令去执行
      • let a=10+19
      • l=ls 将命令赋值给变量
      • letc=$(ls -l /etc) 将命令结果赋值给变量,使用$()或''
      • 变量中若有空格或特殊字符,可包含在" "或 ' ' 中
    • 变量引用

      • ${变量名} 引用变量,在部分情况下可以省略为 $变量名
    • 变量一般作用在当前的shell进程和当前的终端中,若想要对当前进程也生效的话,使用 source 方式执行脚本

    • 环境变量:每个shell打开都可以获取的变量

      • set、env、export 变量

        • set 用来显示本地变量,显示当前shell的变量,包括当前用户的变量
        • env 用来显示环境变量,显示当前用户的变量
        • export 用来显示和设置环境变量, 显示当前导出成用户变量的shell变量。export + 变量,可以使子进程获取父进程的变量取值
      • $? 上一条命令是否正确执行成功; $$ 显示当前进程的PID; $0 当前进程的名称;

      • $PATH 命令的搜索路径

        • PATH=$PATH:/root 若一个命令文件放在/root 下面,通过这个方式将/root 添加到搜索路径下,则在任何地方都可以直接执行文件,从而执行命令。对当前终端和子shell生效,换其他终端则无效。
      • $PS1

    • 位置变量

      • $1 $2 $3 ... $9 ${10}
      • pos=${1-_} 表示若$1的取值是空值,则用下划线给pos赋值;若$1有内容,则用$1赋值
    • 环境变量配置文件

      • 配置文件,保存在/etc 目录下面的配置文件,都是通用的,普通用户可用。~下面的配置文件,是用户的家目录配置文件
        • /etc/profile 保存系统和终端启动时的配置文件,使用su - +用户名 时,这个文件第一个被加载。例如 su - root 依次加载的文件:
          /etc/profile
          .bash_profile
          .bashrc
          /etc/bashrc
          以上顺序,若在定义变量时,在各个配置文件中若名称有重复,后面的执行的脚本会把前面的变量给覆盖掉。
          若要使当前系统的所有终端都可用,使用下面语句:
          export PATH=$PATH:/new/path 将该语句写入到上面的配置文件中,则父进程和子进程,以及所有终端都可以使用相关环境变量。
        • /etc/profile.d/
        • ~/.bash_profile
        • ~/bashrc
        • /etc/bashrc
      • 在配置文件中添加环境变量后,如何生效?
        1. 关掉终端,重新打开
        2. source + 配置文件 执行,如 source /etc/bashrc

    数组

    • 定义数组
      • IPTS=(10 11 12)
    • 显示数组所有元素
      • echo ${IPTS[@]}
    • 显示数组元素个数
      • echo ${#IPTS[@]}
    • 显示数组的第一个元素
      • echo ${IPTS[0]}
  • 相关阅读:
    Apicloud_(模板)登陆注册功能模板
    Apicloud_(接口验证)用户注册头部信息X-APICloud-AppKey生成
    Apicloud_(项目)网上书城02_后端数据获取
    Apicloud_(项目)网上书城01_前端搭建
    R_Studio(时序)Apriori算法寻找频繁项集的方法
    R_Studio(聚类)针对iris数据比较几种聚类方法优劣
    R_Studio(神经网络)BP神经网络算法预测销量的高低
    JavaWeb_(SSH论坛)_七、辅助模块
    JavaWeb_(SSH论坛)_六、点赞模块
    JavaWeb_(SSH论坛)_五、帖子模块
  • 原文地址:https://www.cnblogs.com/chenri/p/12677404.html
Copyright © 2020-2023  润新知