加入收藏 | 设为首页 | 会员中心 | 我要投稿 晋中站长网 (https://www.0354zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Unix > 正文

LinuxShell变量使用

发布时间:2022-11-25 23:00:21 所属栏目:Unix 来源:未知
导读: 一、本地变量的使用
本地变量就如同局部变量一样,只在本SHELL中起作用。它不会影响到其他SHELL中的变量。
1。显示变量值
可以使用echo命令。需要注意的是,使用变量的时候必须在变量名前加

一、本地变量的使用

本地变量就如同局部变量一样,只在本SHELL中起作用。它不会影响到其他SHELL中的变量。

1。显示变量值

可以使用echo命令。需要注意的是,使用变量的时候必须在变量名前加上$符号

2。清除变量

使用unset命令可以清除命令。

3。显示所有本地SHELL变量

SHELL中预定义了一些环境变量。要想显示这些命令,可以使用set命令。

另外,用户自己已经定义过的本地变量也会在其中显示。

4。测试变量是否已经赋值

${variable:-value}

如果变量已经赋值,则使用该变量值。如果变量为空,则使用value。需要注意的是,value并不赋给variable。

${variable:=value}

该表达式上面的区别就是,如果variable为空,则value赋给variable。

如果需要检验变量是否为空,如果为空的话则显示带有系统错误信息,则使用下面的表达式:

${variable:?}

如果需要显示自己定义的信息,则如下:

${variable:?"customed message "}

5。设置只读变量

使用readonly可以将变量定义成只读。

readonly variable

单独执行readonly可以显示所有的只读变量。

二、环境变量

环境变量用于所有的用户进程。在Linux中,登陆进程称为父进程UNIX Shell变量,shell中执行的用户程序均称为子进程。

环境变量可以在命令行中设置,但用户注销时这些值将丢失。因此最好在$HOME/目录下的.profile中定义。

传统上环境变量均为大写。环境变量应用于用户进程之前,必须用export命令导出。设置方法与本地变量设置方法相同。

1。显示环境变量

使用env命令可以察看所有环境变量

2。潜入SHELL变量

EXINIT保存使用vi编辑器的初始化选项。比如要显示行号,则如下:

EXINIT='set nu';export EXINIT

HOME:用于记录用户的主目录;

IFS:用作shell指定的缺省域分隔符。

PATH:保存进行命令或脚本查找的目录顺序。可以在.profile中进行设置。

3。将变量导出到子进程

在父脚本中使用export命令可以将变量导出,这样子脚本便可以知道该变量的值。

三、位置变量参数

在向脚本传递参数时,可以使用此位置变量来获取参数。

他们分别是:

$0:脚本名字。此变量包含地址,可以使用basename $0获得脚本名称。

$1:第一个参数

$2,$3,$4,$5,...一次类推。

四、特定变量参数

一些脚本运行的相关控制信息

$# 传递到脚本的参数个数

$* 以一个单字符串显示所有向脚本传递的参数

$$ 脚本运行的ID号

$! 后台运行的最后一个进程的ID号

$@ 与$#相同,但是使用时加引号,并在引号中返回每个参数。

$- 显示shell使用的当前选项。

$? 显示最后命令的推出状况。0表示没有错误。

(编辑:晋中站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!