Linux学习—复习变量

变量的作用:Linux时多用户、多任务的环境,每个人登录系统都能获取一个bash,每个人都通过bash执行mail这个命令来收取自己的邮件,但bash怎么可以得知你的邮件信箱是哪个文件?这就是需要变量的帮助。

1 变量的概念

例如,y=3,左边的y就是变量,变量主要是用在容易变动的数据。

1)变量的可变性和方便性。
例如变量用户user,小李的用户名userLi,小王的用户名userWang,小李登录user=userLi,小王登陆了user=userWang,对于程序员来讲就很方便,用一个变量就可以判断哪个用户进行登录。

2)影响bash环境操作的变量
某些特定变量会影响bash的环境。举例来说,PATH变量,例如执行ls这个命令时,系统就是通过PATH这个变量的内容所记录的路径顺序来查找命令的呢

3)脚本程序设计(shell script)的好帮手
例如写一个大型的script时,有些数据因为可能由于用户习惯的不同而有区别,比如说路径好了,由于该路径在script被使用在相当多的地方,下次换台主机,都要修改script里面 的所有路径,这个时候如果使用变量,就将该变量的定义写在最前面,后面相关的路径名称用变量代替。这样就可以改一行来代替修改整篇script。

2 变量的显示和设置

1)变量的显示
在这里插入图片描述
变量的显示格式为:echo ${变量} 或 echo $变量
为空:代表不存在这个变量

2)变量的设置

规则如下:

  1. 命名只能使用英文字母,数字和下划线,首个字符不能以数字开头。
  2. 中间不能有空格,可以使用下划线(_)。
  3. 不能使用标点符号。
  4. 不能使用bash里的关键字(可用help命令查看保留关键字)。
  5. 若变量内容有空格可以使用双引号或单引号将变量内容结合起来。双引号的特殊字符$可以保持变量原本的特性;单引号内的特殊字符仅为一般的字符纯文本。

a.设置变量name,并赋值内容为sun

在这里插入图片描述

b.使用转义字符"",把空格等特殊字符变成一般字符

在这里插入图片描述

c.变量需要增加变量内容: 可用 “${变量}” 或 “ $变量”进行累加
在这里插入图片描述
d.变量需要在其他子进程进程执行,则需要以export来使变量变成环境变量:export name1

在这里插入图片描述

e.取消变量的方法:“unset 变量名称”
在这里插入图片描述

3 环境变量的功能

环境变量可以帮我们主文件夹的变换、提示符的先死、执行文件查找的路径等。

1)用env查看环境变量与常见的环境变量说明
在这里插入图片描述
a. HOME代表用户的主文件夹。利用cd ~ 可以回到自己的主文件夹,或者直接利用cd就可以直接回到用户主文件夹,就是使用这个变量,有很多程序可能会用到这个变量的值。

b. SHELL:告知我们目前这个环境使用的shell时哪个程序?Linux默认使用/bin/bash的。

c. HISTSIZE:这个时与历史命令有关,即是我们曾经执行过的明朗了可以被系统记录下来,记录的条数就这个值来设置。

d. MAIL:使用mail这个命令在收信时系统会去读取的邮件信箱文件(mailbox)。

e. PATH:这就是执行文件查找的路径,目录与目录中间以冒号分隔,由于文件的查找时依序由PATH的变量内的目录来查询,所以目录的顺序也是很重要的。

f. LANG :是语系数据,很多信息会用到它。例如我们启动某些Perld的程序语言文件,会主动去分析语系数据文件,如果发现有它无法解析的编码语系,可能会产生错误。

e. PANDOM:这是随机数的变量。目前大多数distribution都会有随机数生成器,那就是/dev/random这个文件,利用declare声明数值类型,如下就可以生成随机数

在这里插入图片描述

f. 用set查看所有变量(环境变量和自定义变量)
bash不只有环境变量,还有一些与bash操作接口有关的变量,以及用户自己定义的变量存在的。通常shell操作接口有关的变量一般都被设置为大写字符,也就是Linux默认的情况中,使用大写字母来设置的变量一般为系统内定需要的变量。
在这里插入图片描述
PS1(提示符的设置)

  • \d:可显示出“星期月日"的格式;
  • \H:完整的主机名。
  • \h:取主机名第一个小数点之前的名字;
  • \t:显示时间,为24小时格式”HH:MM:SS“;
  • \T:显示时间,12小时格式的”HH:MM:SS“;
  • \A:显示时间,24小时格式的”HH:MM;
  • @:显示时间,12小时格式”am/pm“样式;
  • $:提示符,如果是root,提示符为#,否则是$;
    此处省略。。。。

$(关于本shell的PID):这个本来就是变量,这个代码的是目前这个shell的线程代号,就是所谓的PID。

(关于上个执行命令的回转码)
这个变量是上一个执行命令所传回的值。如果没有成功执行改命令就会回传0,否则会回传错误代码

export:自定义变化转成环境变量

4 变量键盘读取、数组、声明:reaad、array、declare

4.1 read

读取来自键盘输入的变量。
下面输入为:给提示语请在10秒内输入你的名字,name为输入字符串的变量
在这里插入图片描述

4.2 declare/typeset

declare后没有任何参数,bash就会主动将所有的变量名称和内容全部调出来,
declare [-aixr] var
选项:

  • -i:将后面名为var变量定位成整数类型;
  • -a:将var变量定义为数组;
  • -x:和export一样,将var变成环境变量;
  • -r:将变量设置称为readonly,该变量为不可更改内容,不能重设
    变量不设置类型,就默认为字符串

4.3 数组(array)变量类型

数组设置方式:var[index]=content
设置数组
在这里插入图片描述
在这里插入图片描述
查看数组内容:
在这里插入图片描述

5 变量内容的删除、替代、替换

5.1 变量内容的删除与替换

1)把PATH变量赋值给path,查看path变量内容
在这里插入图片描述

2)删除内容包含local/bin的路径

#:代表从变量内容的最前面开始向右删除且仅删除最短的那个;

#后面/开始代表要删除的内容;

*来替代0到无穷多个任意字符;
在这里插入图片描述
##:删除掉最长的那个数据
在这里插入图片描述
删除最后一个目录,
%:从最后一个目录里删除
在这里插入图片描述
只保留第一个目录,%%代表的则是最长的符合字符串
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
学习Linux环境变量的语法可以帮助你正确设置和管理环境变量。下面是一些常见的Linux环境变量语法: 1. 设置环境变量: - 使用`export`命令来设置环境变量。语法如下: ``` export VARIABLE_NAME=value ``` 其中,`VARIABLE_NAME`是环境变量的名称,`value`是相应的值。例如,要设置`PATH`环境变量,可以使用: ``` export PATH=/usr/local/bin:$PATH ``` 2. 查看环境变量: - 使用`echo`命令来查看特定环境变量的值。语法如下: ``` echo $VARIABLE_NAME ``` 例如,要查看`PATH`环境变量的值,可以使用: ``` echo $PATH ``` 3. 永久设置环境变量: - 如果希望永久设置环境变量,可以将相应的设置语句添加到Shell的配置文件中。常见的配置文件包括: - `~/.bashrc`:用户级别的配置文件,适用于当前用户。 - `~/.profile`:用户级别的配置文件,在登录时会加载。 - `/etc/environment`:全局级别的配置文件,适用于所有用户。 - 打开相应的配置文件,使用文本编辑器添加设置语句,保存并重新加载Shell配置,或者重新登录以使设置生效。 4. 变量替换: - 在环境变量的值中,可以使用其他环境变量或命令的输出进行替换。 - 使用`${}`语法进行变量替换。例如,要将`$HOME`环境变量的值添加到`PATH`中,可以使用: ``` export PATH=${HOME}/bin:$PATH ``` - 使用`` `command` ``或`$(command)`语法来替换命令的输出。例如,将当前日期添加到环境变量中: ``` export CURRENT_DATE=$(date +%Y-%m-%d) ``` 这些是一些常见的Linux环境变量语法。通过学习和实践,你可以更好地理解和应用环境变量的设置。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值