shell脚本中的变量

本文详细介绍了Shell脚本中变量的定义、环境级别、用户级别和系统级别的设置,包括变量转译、数组操作,以及Linux命令别名设定。同时讲解了用户环境变量的更改和脚本函数的使用,包括参数传递和函数定义。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

一、变量的定义

1、定义

2.变量存在的意义

二、shell脚本中变量的定义方法

1.环境级别

2.用户级别

3、系统级别

4、变量名称定义规则

三、变量的转译

1、转义

2、变量的声明

3、 变量的数组

四、Linux中命令的别名设定

1、环境级别

2、用户级别

3、系统级别

4、取消

五、用户环境变量的更改

六、脚本函数

1、直接利用命令执行结果

2、脚本中的传参

3、脚本函数 


一、变量的定义

1、定义

变量就是内存一片区域的地址

2.变量存在的意义

命令无法操作一直变化的目标
用一串固定的字符来表示不固定的目标可以解决此问题

二、shell脚本中变量的定义方法

1.环境级别

export A=1
在环境关闭后变量失效

 

2.用户级别

vim ~/.bash_profile
export A=1

 source ~/.bash_profile 

 3、系统级别

 [root@westos-firewall mnt]# vim /etc/profile.d/A.sh
[root@westos-firewall mnt]# source /etc/profile.d/A.sh

 4、变量名称定义规则

变量名可以使用:

字母
下划线_
数字
不能用数字开头
变量名称短全用大写字符
变量名称长用_区分子类
Westos_Linux
westoS_Linux

 三、变量的转译

1、转义

转译:
\         转译单个字符
"  "       弱引用,批量转译个数字符 不能转译"\ " "" "$" "!"
'  '        强引用

 

 2、变量的声明

a=1
echo $ab
echo ${a}b         a是变量,对a做变量声明

在这里插入图片描述 

3、 变量的数组

echo $a                 默认输出数组第一个元素
echo ${a[0]}          数组中第一个元素
echo ${a[-1]}         数组中最后一个元素
echo ${a[*]}           数组中所有元素
echo ${a[@]}         数组中所有元素
echo ${#a[@]}       数组中元素的个数

 

echo ${a[@]:0:2}         数组中0后面排两个元素
echo ${a[@]:5:3}         5后面排3个元素,5后面只有1个

不能有负数 

 

unset a[0] ##删除数组的第一个元素
a[0]=1 ##添加数组的第一个元素1

 

四、Linux中命令的别名设定

 1、环境级别

 2、用户级别

 3、系统级别

 4、取消

 五、用户环境变量的更改

用户级别:vim ~/.bash_profile 中 加入:/mnt

 取消:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

 六、脚本函数

 1、直接利用命令执行结果

$---()---|---""        这四种优先执行

TEST=`hostname’ 等同于 TEST=$(hostname)

2、脚本中的传参

非交互模式: 没有回应直接给出结果

$0 is westos3.sh <脚本本身>
$1 is jiaojiao <脚本后所输入的第一串字符>
$2 is sun <脚本后所输入的第二串字符>
$* is jiaojiao sun <脚本后所输入的所有字符 “linux haha 123”>
$@ is jiaojiao sun <脚本后所输入的所有字符 ‘linux’ ‘haha’ ‘123’>
$# is 2 <脚本后所输入的所有字符串个数>

 

 

 交互模式传参: 有回应

read WESTOS         对westos赋值

 

 read -p “please input word:”         输出提示语

 

 s        隐藏输入内容

 echo -e “\n”          -e 执行动作,"\n"多一行

3、脚本函数 

定义: 程序的别名
设定方式:
WORD()
{ action1
action2
}
WORD 在脚本中就代表action1 action2这两个动作

(一)调用WESTOS函数

 WESTOS函数,并循环WESTOS

 用WESTOS函数,并循环WESTOS,输入 exit 退出

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值