shell脚本基础——变量

变量的定义

变量即在程序运行过程中它的值是允许改变的量,是用一串固定的字符来标示不固定的值的一种方法,是一种使用方便的占位符,用于引用计算机内存地址,该地址可以存储 Script 运行时可更改的程序信息,在 shell 中变量是不能永久保存在系统中的,必须在文件中声明。

在 shell 脚本中变量的种类

在 shell 中变量分为环境级变量,用户级变量,系统级变量,环境级变量只在当前 shell 中生效, shell 关闭变量丢失。用户级变量写在用户的骨文件中,只针对当前用户生效,系统级变量被写在系统的配置文件 /etc/profile 或者 /etc/profile.d/ 中,对于所有用户都生效。

shell 脚本中变量的定义方法

环境级变量
设定环境级变量直接在shell环境内声明即可。
在这里插入图片描述
设定的变量只在当前shell环境中生效。
用户级变量
设定用户级变量需要修改配置文件

vim ~/.bash_profile

在这里插入图片描述
声明变量A=1
在这里插入图片描述
重新加载文件后输出,用户级变量只对当前用户生效,切换用户后将不再生效。
系统级变量

vim /etc/profile

在这里插入图片描述
在这里插入图片描述
系统级变量在整个系统生效,即使切换用户或者重新打开一个shell环境,设置的变量仍然生效。

字符的转译及变量的声明

字符 作用
\ 转译单个字符
“” 弱引用,批量转译 “” 中出现的字符
‘’ 强引用,批量转译 ‘’ 中出现的字符
‘’ 与 “” 两者的区别在于, “” 不能转译 “”,"`","!","$"
${} 变量声明

变量值传递

字符 作用
$1 脚本后的第一串字符串
$2 脚本后的第二串字符串
$3 脚本后的第三串字符串
$# 脚本后所跟字符串的个数
$* 脚本后跟的所有字符串,模式为“ 1 2 3 ”
$@ 脚本后跟的所有字符串,模式为“ 1”“2”“3”

用 read 实现变量传递

vim read.sh

在这里插入图片描述
在这里插入图片描述
执行脚本时输入所要输入的变量,可以用来实现变量的传递,使用-s参数是可以在输入时隐藏显示。

linux 系统中命令别名的设定

系统命令可以根据我们自己的需求修改别名,设定系统的别名也分为环境级,用户级,系统级,和前面的声明变量一样。
环境级

alias xie='vim'

设置vim的别名为xie,只在当前环境中生效
用户级

vim ~/.bashrc

修改配置文件,修改后命令的别名只对当前用户生效。
系统级

vim /etc/bashrc

修改配置文件,修改后命令的别名对整个系统生效。

脚本中的函数

脚本中的函数时把一个复杂的语句块定义成一个字符串的方法,定义完成之后,就可以使用这个字符窜去实现语句块的功能,当我们写程序时需要完成重复的操作时时常用到。

在这里插入图片描述
如我们前面所写的这个简单的语句就可以写成一个函数
在这里插入图片描述
这个函数每次执行的时候都把自己调用一次,以完成循环操作。

猜你喜欢

转载自blog.csdn.net/qq_41961805/article/details/88394435