2.变量和环境变量

使用env命令在终端中查看所有与此终端进程相关的环境变量。对于每个进程,在起运行时的环境变量可以使用下面的命令来查看:

cat /proc/$PID/environ

其中,将PID设置成相关进程的进程ID(PID总是一个整数)。

获取程序进程ID命令:

$ pgrep 进程名称

如 $ pgrep gedit

12501

然后通过PID可以获得与此进程相关的环境变量

替换命令;

$ cat /proc/12501/environ | tr '\0' '\n'

变量赋值:

var=value

var是变量名,value是赋给变量的值。如果value不包含任何空白字符(例如空格),那么他不需要使用引号进行引用,反之,则必须使用单引号或双引号。

注意:var = value 不同于var=value。把var=value写成var = value是一个常见的错误,但前者是赋值操作,后者则是相等操作。

export命令用来设置环境变量。

例如:

HTTP_PROXY=http://192.168.0.2:3128

export HTTP_PROX:

补充内容:

1、获得字符串长度:

length=${#var}

例如:

$ var=1234567890

$ echo ${#var}

2、识别当前的shell版本

echo $SHELL 或者 echo $0 可以获得当前的shell版本

例如:

$ echo $SHELL

/bin/bash

$ echo $0

bash

3、检查是否为超级用户

if [ $UID -ne 0 ];then

echo Non root user. Please run as root.

else

echo "Root user"

fi

Root用户的UID是0

4、修改Bash提示字符串(username@hostname:~$)

$ cat ~/.bashrc | grep PS1

[ -z "$PS1" ] && return

PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '

PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"

linux读取环境变量替换,linux Shell脚本学习笔记二(变量和环境变量)相关推荐

  1. Shell脚本学习-阶段二

    文章目录-Shell脚本学习阶段二 前言 shell脚本实操2 1.获取随机字符串或数字 2.定义一个颜色输出字符串函数 3.批量创建用户 4.检查软件包是否安装 5.检查服务状态 6.检查主机存活状 ...

  2. Shell脚本(学习笔记1)

    shell脚本学习记录 为什么学习shell脚本? 在一些复杂的linux维护工作过程中,大量的重复性的输入和交互操作不但费时费力,而且容易出现错误:然而编写shell脚本程序,可以批量处理.自动化的 ...

  3. shell 脚本学习笔记

    shell 脚本学习总结: 文件表达式 -e filename 如果 filename存在,则为真 -s file exists and has a size greater than zero. 判 ...

  4. shell脚本学习笔记一

    又开始写学习笔记了,呵呵... 今年打算选择一门技术系统的学习一下.编程语言.虚拟机技术.数据库.大数据.云计算在这些种类中,我选择了shell编程.为什么选择shell呢?也没有什么具体的原因.以前 ...

  5. linux shell脚本学习指南,shell脚本学习指南[二](Arnold Robbins Nelson H.F. Beebe著)

    该进入第四章了,刚才看到一个帖子标题:我空有一身泡妞的好本领,但可惜自己是个妞.汗-这个...音乐无国界嘛,这个不应该也没性别界么? 第四章文本处理工具 书中先说明了以下排序的规则,数值的就不用说了, ...

  6. shell脚本学习第四天——bash内部变量,变量主串,变量替换

    一.bash内部变量: 常见的内部命令:echo,eval,exec,export,readonly,read,shift ,wait,exit和点(.)也就是source命令. 命令 作用 echo ...

  7. linux 命令自动填充,Shell脚本学习笔记之(自动填充函数模板)

    其实,vii 就是写的一个脚本,跟 vi 没半毛钱关系,只不过借用一下这个名字而已.那这个脚本长什么样呢?look: 下面来详细的解析上面的代码,来看第1行: #!/bin/bash 这是Shell脚 ...

  8. Shell脚本学习之二:变量与运算符

    variable-name = value [root@Gwan ~]# LOCALTEST="test" [root@Gwan ~]# echo ${LOCALTEST} tes ...

  9. Shell脚本学习-阶段二十七-命令解释一

    文章目录-命令解释一 前言 as expr gcc gcov gdb indent ld ldconfig ldd make mktemp nm objdump perl php protoize u ...

最新文章

  1. python函数中参数前面的*和**的含义
  2. Windows Phone 7用户界面原型截图汇总
  3. 【详细解析】基础实验4-2.6 目录树 (30 分)
  4. IOS之截取特定字符串
  5. 最新最详细最简洁Eclipse调试PHP配置详解(Xdebug,Zend Debugger)
  6. POJ 计算几何(3)
  7. Java装饰器模式详解
  8. ldconfig 和 ldd 命令用法
  9. 编译生成的Apk安装到手机提示应用未安装,需给apk签名
  10. 《调试软件》作者主页
  11. [转]sourceforge文件下载过慢
  12. coverity静态安全扫描分析软件linux环境搭建
  13. Android中调用.so库操作步骤
  14. 【C#】关于委托和事件
  15. 基于(springmvc+tomcat+JavaScript)的化妆品商城系统
  16. python对MySQL数据库的基本操作CRUD
  17. 已集成 VirtIO驱动windows server 2012, 2008, 2003的ISO镜像下载
  18. 大专计算机结业考试试题,失业人员计算机培训考试结业试题.doc
  19. app复杂业务逻辑自动化验证案例分享
  20. Kubernetes单机部署-一键安装

热门文章

  1. core控制器属性注入的用处_了解ASP.NET Core 依赖注入,看这篇就够了
  2. 数据挖掘在企业中应用的四种途径
  3. 模型学习 - HNN、RBM、DBN
  4. poj2079(一堆点找出最大的三角形)
  5. java native方法_并发系列-native函数回调Java方法原理实践
  6. 【52】写了placement new也要写placement delete
  7. laravel框架图片上传
  8. 【LeetCode】103# 二叉树的锯齿形层次遍历
  9. 个人作业——软件工程实践总结
  10. eclipse创建Maven的动态web工程