1.Shell变量

发布于:2024-12-07 ⋅ 阅读:(32) ⋅ 点赞:(0)

1.shell变量介绍

  • Linux Shell中的变量分为: 系统变量 和 用户自定义变量
  • 系统变量:$HOME、$PWD、$SHELL、$USER等等, 比如 echo $HOME
  • 显示当前shell所有变量 :set

2.自定义变量

2.1 语法规则

# 基本语法
1. 定义变量: 变量名=值
2. 撤销变量: unset变量
3. 声明静态变量: readonly变量, 注意:不能unset

# 多行注释
:<<!
注释的内容
!
# 定义变量的规则
1. 变量名称可以由字母、数字、和下划线组成,但不能以数字开头。 5A=200(错)
2. 等号两侧不能有空格
3. 变量名称一般习惯为大写,这是一个规范,我们遵守即可

# 将变量的返回值赋值给变量
1. A=`date` 反引号,运行里面的指令,并把结果返回给A变量
2. A=$date 等价于反引号

2.2案例

#!/bin/bash

# 案例1: 定义变量A
A=100
# 输出变量
echo A=$A
echo "A=$A"

# 案例2:撤销变量A
unset A
echo "A=$A"

# 案例3: 声明静态变量B=2,不能unset
readonly B=2
echo "B=$B"

# 将指令返回的结果赋值给变量
C=`date`
D=$(date)
echo "C=$C"
echo "D=$D"

# 使用环境变量
echo "BASH=$bash"

3.环境变量

3.1 语法规则

# 基本语法
1. export 变量名=变量值
2. source 配置文件
3. echo $变量名

3.2案例

# 1.在/etc/profile文件中定义TOMCAT_HOME环境变量
# 2.查看环境变量TOMCAT_HOME的值

vim /etc/profile
export TOMACAT_HOME=/opt/tomcat

4.位置参数变量

4.1 基本语法

# 基本语法
    $n (功能描述: n为数字,$0代表命令本身 
        $1-$9代表第一到第九个参数,十以上的参数,十以上的参数需要用大括号包含,如${10} )
    $* (功能描述:这个变量代表命令行中所有的参数,$*把所有的参数看成一个整体)
    $@(功能描述:这个变量也代表命令行中所有的参数,不过$@把每个参数区分对待)
    $#(功能描述:获取所有输入参数个数,常用于循环)

4.2例子

#!/bin/bash
echo "0=$0 1=$1 2=$2"
echo "所有参数=$*"
echo "$@"
echo "参数的个数=$#"

5.预定义变量

5.1 语法规则

# 基本介绍
    就是shell设计者事先已经定义好的变量,可以直接在shell脚本中使用

# 基本语法
    $$ (功能描述:当前进程的进程号(PID))
    $! (功能描述:后台运行的最后一个进程的的进程号(PID))
    $? (功能描述: 最后一次执行的命令的返回状态,如果这个变量值为0,
                  证明上一个命令执行正确,否则就是不正确)

5.2案例


网站公告

今日签到

点亮在社区的每一天
去签到