变量是任何一种编程语言都必不可少的组成部分,用于存放各种类型的变量。脚本语言大多是弱类型语言(动态语言),也就是说在使用变量时,不需要事先声明变量的类型,只需要直接赋值就可以。

在Bash中,每一个变量的值都是字符串。无论你给变量赋值时有没有使用引号,值都会以字符串的形式存储。有一些特殊的变量会被shell环境和操作系统保留,用来存储一些特别的值,

这类变量就称为环境变量,相信大家对环境变量也并不陌生,因为即使在windows操作系统上,也存在环境变量。

1、  简介

linux下的变量可分成两种:Shell变量和环境变量。

Shell变量,又称本地变量,包括私有变量以及用户变量,不同类的shell有不同的私有变量,bash,ksh,csh等,每种shell的私有变量都不一样

环境变量,又称用户变量,与shell无关

常规定义变量的方法:变量名=变量值

注意:

1.变量名和=号之间不能有空格,否则shell会把变量名当成命令

2.变量名称一般使用大写字母

2、  常用的相关命令

env命令:显示当前用户的环境变量

set命令:不加参数,显示当前shell的所有本地设置的Shell变量,否则设置shell变量

unset命令:unset为shell内建指令,删除变量或函数。

exprot命令:显示(设置)当前导出成用户变量的shell变量(注意:export为bash或类bash私有的命令)

echo $变量名:查看变量值(其中,$变量:引用变量的意思)

3、环境变量

变量采用常见的命名方式进行命名。当程序启动时,他接受一族环静变量,可以使用env(eviroment)命令查看所有与终端相关的环境变量。对于进程来说,其运行时的环境变量可以用下面的命令来查看:

cat /proc/$PID/environ      #PID总是一个整数
pgrep firefox               #我刚才的结果返回3013
cat /proc/3013/environ      #返回了一堆,不列出

UID环境变量

UID是一个重要的环境变量,可以用于检查当前脚本是以超级用户还是以普通用户的身份运行的。root用户的UID是0。

转载于:https://www.cnblogs.com/disanyuzhou/p/6825919.html

linux 环境变量和shell变量相关推荐

  1. linux超级基础系列——shell变量(本地变量和环境变量)

    linux超级基础系列--shell变量(本地变量和环境变量) 2006-12-04 00:39 为使shell编程更有效,系统提供了一些shell变量.shell变量可以保存诸如路径名.文件名或者一 ...

  2. linux脚本查看变量类型,Shell变量:Shell变量的定义、删除变量、只读变量、变量类型...

    变量是任何一种编程语言都必不可少的组成部分,变量用来存放各种数据.脚本语言在定义变量时通常不需要指明类型,直接赋值就可以,Shell 变量也遵循这个规则. 在 Bash shell 中,每一个变量的值 ...

  3. Shell变量:Shell变量的定义、删除变量、只读变量、变量类型

    Shell支持自定义变量. 定义变量 定义变量时,变量名不加美元符号($),如: variableName="value" 注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编 ...

  4. linux shell变量作用域,Shell变量的作用域:Shell全局变量、环境变量和局部变量

    Shell变量的作用域(Scope),就是Shell变量的有效范围(可以使用的范围). 在不同的作用域中,同名的变量不会相互干涉,就好像A班有个叫小明的同学,B班也有个叫小明的同学,虽然他们都叫小明( ...

  5. linux学习笔记:shell变量

    首先,这里要区分几个概念: 局部变量 也叫 本地变量 :在脚本或命令中定义,仅在当前shell实例中有效,其他shell启动的程序不能访问 全局变量 也叫 环境变量 :所有的程序,包括shell启动的 ...

  6. Makefile中的变量和shell变量

    我们在写makefile时 多多少少会用到shell脚本, 对于变量的在shell中的使用有一些要注意的细节.让我们从一个简单的makefile来看看. 注意makefile中一定要有一个目标,且一定 ...

  7. linux创建环境变量有什么用,环境变量和shell变量到底有什么区别呢?

    open-end 于 2007-06-02 21:21:10发表: 我们仍以BASH 为讨论的shell 语言 每一种编程语言中,我们都会碰到变量的作用域的问题.(比如在函数中定义的变量在函数外不能使 ...

  8. linux echo输出结果赋值给变量,shell变量n位补零

    name=`echo $1|awk '{printf("%04d\n",$0)}'`    将 $1 进行4位数补零,后传递字符串给 name. 将下面代码,命名为 playVid ...

  9. linux中特别的Shell变量 DUALCASE

    DUALCASE In the MKS shell, case statements and file name generation are case-insensitive unless DUAL ...

  10. 【Linux脚本篇】shell变量的使用

    目录

最新文章

  1. 【Gradle】借助gradle的ProductFlavor实现多App间代码库复用
  2. POJ 1144 Network(无向图连通分量求割点)
  3. Maven学习总结(十)——使用Maven编译项目gbk的不可映射问题
  4. 8. Mac brew usage and php version
  5. 085 对象的绑定方法
  6. 多项logistic回归系数解释_Logistic回归结果的回归系数和OR值解读
  7. Pandas:利用Styler对象设置Series、Dataframe在Jupyter Notebook中的输出样式(2)——内置样式
  8. stm32命名规范总结
  9. python列表求平均数_python 列表平均值
  10. 【渝粤教育】国家开放大学2018年秋季 0088-21T保险学概论 参考试题
  11. 计算机翻译属于下列哪个领域的应用,机器翻译应用平民化:机器翻译属于下列哪个领域的应用...
  12. linux服务器用lighttpd+mysql5+php5+SupeSite/X-Space+discuz构建社区门户
  13. plsql官方下载地址
  14. Java二维数组-输出二维数组的和
  15. IO流(输入流与输出流)
  16. final修饰局部变量
  17. 工厂(Factory)模式
  18. Bear and Three Balls
  19. Plonky = Plonk + Halo + Rescue
  20. iPhone 13维修换屏问题:芯片决定面容ID“生死”

热门文章

  1. 数据结构c语言版堆排序,【数据结构】堆排序(C++实现)
  2. C语言:编写函数,通过一个指针将一个字符串反向
  3. 【汇编语言】【ARM扩展资料】汇编语言开发
  4. Linux wget命令入门
  5. git pull命令报错
  6. 使用shell脚本将mysql数据导入HIve中
  7. 什么是损失函数与平均误差算法分析
  8. Ubnutu20.04安装Tensorflow
  9. 整装待发 QTA UI自动化测试框架迎来大更新
  10. 火狐与Chrome浏览器的移动端调试模式(手机页面、自适应)