shell编程02【基本语法-变量】

简介: shell编程02【基本语法-变量】


shell变量

1.系统变量

 常用的系统变量

image.png

env:显示用户的环境变量

image.png

2.自定义变量

2.1定义规则

变量名称=值

注意:

   等号两侧不能有空格

   变量名称一般习惯大写

2.2变量使用

普通使用

[root@hadoop-node01 ~]# address=深圳
[root@hadoop-node01 ~]# echo $address
深圳

单引号使用

[root@hadoop-node01 ~]# username1='波波烤鸭'
[root@hadoop-node01 ~]# echo $username1
波波烤鸭
# 单引号有脱意的作用
[root@hadoop-node01 ~]# username2='波波烤鸭$address'
[root@hadoop-node01 ~]# echo $username2
波波烤鸭$address

双引号的使用

[root@hadoop-node01 ~]# username2="波波烤鸭$address"
[root@hadoop-node01 ~]# echo $username2
波波烤鸭深圳

双引号中对变量的引用会起作用。

变量的累加

":"通过冒号累加

image.png

取消变量 unset

[root@hadoop-node01 ~]# echo $username2
波波烤鸭深圳
[root@hadoop-node01 ~]# unset username2
[root@hadoop-node01 ~]# echo $username2

提示全局变量export

export 可以将局部变量提升为全局变量

创建一个s1.sh脚本文件,内容如下:

#!/bin/bash
stu1=bobo1
export stu2=bobo2

执行脚本并查看变量

[root@hadoop-node01 ~]# source s1.sh 

image.png

2.3返回值赋值

反引号的使用

反引号,运行里面的命令,并把结果返回给变量P1

[root@hadoop-node01 ~]# ls
apps  s1.sh  shellScript  zookeeper.out
[root@hadoop-node01 ~]# P1=`ls`
[root@hadoop-node01 ~]# echo $P1
apps s1.sh shellScript zookeeper.out

$() 等价于反引号

[root@hadoop-node01 ~]# P2=$(ls)
[root@hadoop-node01 ~]# echo $P2
apps s1.sh shellScript zookeeper.out

3.特殊变量

image.png

$?

image.png

$$

当前进程编号

image.png

$0

当前脚本名称

image.png

[root@hadoop-node01 ~]# ./s1.sh 
当前执行的脚本名称是:./s1.sh

$n

表示n位置的输入参数(n代表数字,n>=1)

image.png

[root@hadoop-node01 ~]# ./s1.sh a1 a2 a3 a4 a5
当前执行的脚本名称是:./s1.sh
第一个参数a1
第二个参数a2
第三个参数a3

$#

表示参数的个数,常用于循环

image.png

当前执行的脚本名称是:./s1.sh
第一个参数
第二个参数
第三个参数
参数总的个数:0
[root@hadoop-node01 ~]# ./s1.sh b1 b2 b3 b4 b5
当前执行的脚本名称是:./s1.sh
第一个参数b1
第二个参数b2
第三个参数b3
参数总的个数:5

$*和$@

都表示参数列表 【在包含""的情况下 $*把循环数据当做一条参数处理了】

正常使用

image.png

image.png

双引号包裹$*和$@使用

image.png

image.png


相关文章
|
1月前
|
Shell Linux Perl
Linux|如何允许 awk 使用 Shell 变量
Linux|如何允许 awk 使用 Shell 变量
37 2
|
1天前
|
机器学习/深度学习 Unix Java
技术笔记:Linux之Shell脚本编程(一)
技术笔记:Linux之Shell脚本编程(一)
|
8天前
|
监控 Unix Shell
Shell语法详解
Shell语法详解
|
9天前
|
存储 Shell 开发者
Shell 变量详解:如何定义、使用和管理
**Shell脚本中,变量是核心元素,用于暂存数据。变量默认为字符串,赋值时等号两侧无空格。命名遵循:数字、字母、下划线,以非数字开头。常用特殊变量如 `$0` (脚本名),`$#` (参数个数)。定义变量可使用单引号(不解析变量)、双引号(解析变量)或不加引号(注意空格)。使用花括号明确变量边界,`readonly` 则可设定只读变量,`unset` 删除变量。实践这些概念以加深理解。**
13 0
|
10天前
|
Shell Perl
7操作系统基础-Shell编程
7操作系统基础-Shell编程
7 0
|
24天前
|
Shell Linux
linux shell 脚本中变量截取
linux shell 脚本中变量截取
20 0
|
1月前
|
监控 关系型数据库 Shell
Shell脚本入门:从基础到实践,轻松掌握Shell编程
Shell脚本入门:从基础到实践,轻松掌握Shell编程
|
1月前
|
Shell 程序员 数据安全/隐私保护
shell 脚本 if-else判断 和流程控制 (基本语法|基础命令)
shell 脚本 if-else判断 和流程控制 (基本语法|基础命令)
|
1月前
|
存储 Shell C语言
shell脚本 编程 变量 基本入门(详解)
shell脚本 编程 变量 基本入门(详解)
|
1月前
|
存储 网络协议 Shell
第十章 Shell编程时常用的系统文件
第十章 Shell编程时常用的系统文件