4.4 shell脚本中的变量

目录

## 1.变量的定义

## 2.shell脚本中变量的定义方法

####3.变量的转译

####4.Linux中命令的别名设定

####5.用户环境变量的更改

#7.脚本函数


## 1.变量的定义

#### 定义本身
变量就是内存一片区域的地址
#### 变量存在的意义
#### 命令无法操作一直变化的目标
用一串固定的字符来表示不固定的目标可以解决此问题

## 2.shell脚本中变量的定义方法

#### 环境级别
export a = 1
在环境关闭后变量失效

 

#### 用户级别
vim ~/ .bash_profile
export a = 1

 

#### 系统级别
vim / etc / profile
export a = 2
vim / etc / profile.d / westos.sh
export b = 3

 

 

## 变量名称
#### 变量名称可包含的字符
字母
下划线 _
数字
#### 变量名称定义规则
不能用数字开头
#### 建议
变量名称短全用大写字符
变量名称长用 _ 区分子类
WESTOS
Westos_Linux
westoS_Linux

 

####3.变量的转译

# 1 ) 转译
\ #转译单个字符

 

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

 

# 2 声明
a = 1
echo $ab
echo ${a}b

 

# 3 变量的数组
a = ( 1 2 3 4 5 )
a$[a[ @ ] : 起始元素 id : 元素个数 ]
echo ${a[ 0 ]} ## 数组中第一个元素
echo ${a[ 1 ]} ## 数组中最后一个元素
echo ${a[ * ]} ## 数组中所有元素
echo ${a[ @ ]} ## 数组中所有元素

 

echo ${a[ @ ] : 0 : 3 } ## 数组中 13 个元素
echo ${#a[ @ ]} ## 数组中元素的个数
unset a[n] ## 删除数组中的第 n1 个元素 unset a
## 删除 a 这个数组

####4.Linux中命令的别名设定

alias xie = 'vim'    ##临时设定

 

vim ~/ .bashrc
alias xie = 'vim'     ##只针对与用户生效
vim / etc / bashrc ## 针对系统所以用户生效
alias xie = 'vim'
unalias xie ## 删除当前环境中的 alias

####5.用户环境变量的更改

 

设定方式
~/ .bash_profile
export PATH = $PATH :/ mnt
/ etc / bash_profile
export PATH = $PATH :/ mnt
# 1 ) 直接利用命令执行结果
$() | ##优先执行
TEST = hostname TEST = $(hostname)
# 2 ) 脚本中的传参
非交互模式
$ 0 is / mnt / test.sh <! 脚本本身 >
$ 1 is westos <! 脚本后所输入的第一串字符 >
$ 2 is linux
$ 3 is redhat
$ * is westos linux redhat
<! 脚本后所输入的所有字符 "westos linux redhat" >
$ @ is westos linux redhat
<! 脚本后所输入的所有字符 'westos' 'linux' 'redhat' >
$# is 3
<! 脚本后 所输入的字符串个数 >
交互模式传参 :
read WESTOS ##对 westos 赋值
read p "please input word : " ## 输出提示语
s ##隐藏输入内容

#7.脚本函数

定义
程序的别名
设定方式
WORD()
{
action1
action2
}
WORD 在脚本中就代表 action1 action2 这两个动作
# 练习脚本 #
sh create_user.sh
Please input username : westos
westos exist < output >> westos is exist > Please input username :
westos not existplease input password : 无回显密码
此用户会自动建立并且密码为提示后设定的密码
并显示 : westos is created
并再次提示 Please input username
Please input username exit
此脚本推出 #### 脚本书写思路
##### 判定 exit 推出
[ "$USER" = "exit" o "$USER" = "EXIT" ] && {
echo bye
} || {
进入判定用户是否存在
}
##### 判定用户是否存在
** 用户存在显示返回判定 exit **
id 用户名称变量 &> / dev / null && {
echo 用户存在
判定 exit
}
** 用户不存在建立用户返回判定 exit **
|| {
显示 please input password
建立用户
更改密码
显示用户建立成功
判定 exit
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值