Linux环境变量


变量前言

变量是任何一种编程语言必不可少的组成部分,用于存放各类数据。脚本语言通常不需要在使用变量之前声明其类型。只需要直接赋值就可以了。在Bash中,每一个变量的值都是字符串。无论你给变量赋值时有没有使用引号,值都会以字符串的形式存储。有一些特殊的变量会被shell环境和操作系统环境用来存储一些特别的值,这类变量就被称为环境变量。


提示:以下是本篇文章正文内容,下面案例可供参考

一、查看环境变量

变量采用常见的命名方式进行命名。当一个应用程序执行的时候,它接收一组环境变量。可以使用env命令在终端中查看所有与此终端进程相关的环境变量。

查看某一进程的环境变量:

# 根据进程名称获取进程ID号
pgrep XXX
# 根据ID号查看进程环境变量,$PID 为进程ID号
cat /proc/$PID/environ

在这里插入图片描述

上面介绍的命令返回一个包含环境变量以及对应变量值的列表。每一个变量以name=value的形式来描述,彼此之间由null字符(\0)分割。如果你将\0替换成\n,那么就可以将输出重新格式化,使得每一行显示一对variable=value。

# tr命令它可以将一组字符变成另一组字符,经常用来编写优美的单行命令;
# 这里tr将'\0' 替换为 '\n'
cat /proc/12501/environ | tr '\0' '\n'

在这里插入图片描述

二、使用

环境变量是未在当前进程中定义,而从父进程中继承而来的变量。例如环境变量HTTP_PROXY,它定义了一个Internet连接应该使用哪一个代理服务器。
该环境变量通常被设置成:

HTTP_PROXY=http://192.168.0.2:3128
export HTTP_PROXY

export命令用来设置环境变量。至此之后,从当前shell脚本执行的任何程序都会继承这个变量。我们
可以按照自己的需要,在执行的应用程序或者shell脚本中导出特定的变量。在默认情况下,有很多标准环境变量可供shell使用。在默认情况下,有很多标准环境变量可供shell使用。
PATH就是其中之一。通常,变量PATH包含:

$ echo $PATH
/home/slynux/bin:/usr/local/sbin:/usr/local/bin:/usr/

在给出所要执行的命令后,shell自动在PATH环境变量所包含的目录列表中(各目录路径之间以冒号分隔)查找对应的可执行文件。PATH通常定义在/etc/environment或/etc/profile或~/.bashrc中。如果需要在PATH中添加一条新路径,可以使用:

export PATH="$PATH:/home/user/bin"
#也可以
PATH="$PATH:/home/user/bin"
export PATH

三、通用内容

1、获取字符串长度

var=12345678901234567890
echo ${#var}

2、识别当前的shell版本(两种方式都可以)

echo $SHELL
echo $0

3、检查是否为超级用户

UID是一个重要的环境变量,可以用于检查当前脚本是以超级用户还是以普通用户
echo $UID
当为root用户时 UID 为 0

4、修改终端提示

在终端中都会看到类似于midsummer@VM-4-10-ubuntu:~$ 的提示字符串。
查看提示字符串

 cat ~/.bashrc | grep PS1

在这里插入图片描述

显示的PS1就是终端所显示的提示符
设置提示字符串 PS1="PROMPT>"

有一些特殊的字符可以扩展成系统参数。
PS1='\u@\h:\w$ ’ <==> midsummer@VM-4-10-ubuntu:~$
例如:

  • \u 可以扩展为用户名 => midsummer
  • \h 可以扩展为主机名 => VM-4-10-ubuntu
  • \w 可以扩展为当前工作目录 => ~
  • 可以使用类似\e[1;31的特定转义序列来设置彩色的提示字符串
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值