环境变量和普通变量

一、几个常用命令:

  1. set : 输出所有变量,包含全局变量和局部变量

  2. env : 只显示全局变量

  3. declare : 输出所有的变量,函数,整数和已经导出的变量

  4. unset : 消除本地变量和环境变量

  5. source /etc/profile : 加载环境变量,使环境变量生效

二、普通变量定义赋值有三种方式:

  1. 变量名=value : 不加引号,值里有变量会被解析后再输

  2. 变量名='value' : 单引号,纯字符串显示

  3. 变量名="value" : 双引号,引号里的变量及命令会解析后输出

三、变量名=$(命令)

  把一个命令的结果作为变量的内容赋值,或者用反引号引起来(即tab键上面那个键输出的字符

  如:CMD=$(date +%F) :将当前日期(格式化为2018-10-24)赋值给变量CMD

[root@hxjk_test_backend_services config]# CMD=$(date +%F)
[root@hxjk_test_backend_services config]# echo $CMD
2018-10-25
[root@hxjk_test_backend_services config]#

四、$变量, ${变量}

  输出变量值

五、shell中特殊位置参数变量

[root@hxjk_test_backend_services test]# cat aa.sh
echo "shell file name: $0"
echo "first param: $1"
echo "params number:$#"
echo "all param:$*"
echo "all param2: $@"
[root@hxjk_test_backend_services test]# sh aa.sh a b c
shell file name: aa.sh
first param: a
params number:3
all param:a b c
all param2: a b c
[root@hxjk_test_backend_services test]#

六、shell进程中的特殊状态变量

  1. $? : 获取执行上一个的执行状态返回值(0为成功,非0为不成功)

  2. $$ : 获取当前执行的shell脚步的进程号

  3. $! : 获取上一个再后台工作的进程的进程号

  4. $_ : 获取在此之前执行的命令或脚步的最后一个参数

[root@hxjk_test_backend_services test]# ll
total 8
-rw-r--r--. 1 root root 119 Oct 24 20:21 aa.sh
-rw-r--r--. 1 root root 8 Oct 25 17:30 bb.sh
-rw-r--r--. 1 root root 0 Oct 24 14:49 cc.sh
[root@hxjk_test_backend_services test]# echo $?
0
[root@hxjk_test_backend_services test]# lll
-bash: lll: command not found
[root@hxjk_test_backend_services test]# echo $?
127
[root@hxjk_test_backend_services test]#

shell变量相关知识的更多相关文章

  1. Shell变量相关

    li@ubuntu:~/test$ vi test.sh li@ubuntu:~/test$ cat test.sh #!/bin/bash #shell变量不加引号;加单引号;加双引号都行 url= ...

  2. linux shell脚本相关知识

    最近的项目中,有一个编写linux shell脚本的任务.由于之前不是很熟悉,在这个过程中遇到了很多困难,查找了很多资料,也收获了很多.下面是linux shell脚本中常用的知识总结. 1基础语法 ...

  3. shell 变量相关的命令

    变量="变量" readonly 变量名="变量"  表示设置该变量为只读变量 ,这个变量不能别改变 echo $变量名 set  显示本地所有的变量 unse ...

  4. 非静态内部类中 static/final 成员变量相关知识

    原文链接:https://blog.csdn.net/qq_20328181/article/details/81391956

  5. Linux Shell系列教程之(三)Shell变量

    本文是Linux Shell系列教程的第(三)篇,更多shell教程请看:Linux Shell系列教程 Shell作为一种高级的脚本类语言,也是支持自定义变量的.今天就为大家介绍下Shell中的变量 ...

  6. shell 环境变量的知识小结

    环境变量的知识小结:·变量名通常要大写.·变量可以在自身的Shell及子Shell中使用.·常用export来定义环境变量.·执行env默认可以显示所有的环境变量名称及对应的值.·输出时用“$变量名” ...

  7. SHELL (2) —— Shell变量的核心基础知识和实践

    摘自:Oldboy Linux运维——SHELL编程实战 Shell变量:用一个固定的字符串(也可能是字符.数字等的组合)代替更多.更复杂的内容,该内容里可能还会包含变量.路径.字符串等其它的内容. ...

  8. shell脚本—基础知识,变量

    shell脚本本质: 编译型语言 解释型语言 shell编程基本过程 1.建立shell文件 2.赋予shell文件执行权限,使用chmod命令修改权限 3.执行shell文件 shell变量: sh ...

  9. 【Python五篇慢慢弹(5)】类的继承案例解析,python相关知识延伸

    类的继承案例解析,python相关知识延伸 作者:白宁超 2016年10月10日22:36:57 摘要:继<快速上手学python>一文之后,笔者又将python官方文档认真学习下.官方给 ...

随机推荐

  1. linux记事工具:RedNotebook Lifeograph Kontact ThotKeeper

    Linux桌面有许多灵活而功能强大的日记工具,如支持标签.加密.多种日志模版和实时搜索.其中的优秀者包括: RedNotebook Lifeograph Kontact ThotKeeper

  2. Python Django 编写一个简易的后台管理工具4-添加admin模版

    导入admin后台模版 可以在网上任意搜索模版,我这里也提供一个地址github 拷贝admin后台的html文件至项目的templates文件夹 创建static文件夹,将admin后台的js,im ...

  3. token是什么?和session什么区别,怎么用

    对于初学者来说,对Token和Session的使用难免会限于困境,开发过程中知道有这个东西,但却不知道为什么要用他?更不知道其原理,今天我就带大家一起分析分析这东西. 一.我们先解释一下他的含义: 1 ...

  4. day 107radis非关系型数据库

    http://www.cnblogs.com/wupeiqi/articles/5132791.html   参考邮件. radis : 1. NoSql 2. 缓存在内存中 3.支持数据持久化 二. ...

  5. vue-router 传递参数的几种方式

    本文转载自:https://blog.csdn.net/crazywoniu/article/details/80942642 vue-router传递参数分为两大类 编程式的导航 router.pu ...

  6. Django token 学前小知识

    1,base64 '防君子不防小人' 方法 作用 参数 返回值 b64encode 将输入的参数转化为base64规则的串 预加密的明文,类型为bytes:例:b‘guoxiaonao’ base64 ...

  7. Cocos2d Box2D之碰撞检测

    |   版权声明:本文为博主原创文章,未经博主允许不得转载. 在Box2D中碰撞事件由b2ContactListener类函数实现,b2ContactListener是Box2D提供的抽象类,它的抽象 ...

  8. luoguP2680 运输计划 题解(二分答案+树上差分)

    P2680 运输计划  题目 这道题如果是看的我的树上差分来的,那么肯定一看题目就可以想到树上差分. 至于这是怎么想到的,一步一步来: 1.n有300000,不可能暴力枚举每一条边 2.因为我们要使运 ...

  9. <每日一题>题目4:for循环套生成器的面试题

    题目: def add(n,i): return n+i def test(): for i in range(4): yield i g = test() for n in [1,10,5]: g ...

  10. 【转】C++ STL中常见容器的时间复杂度

    map, set, multimap, and multiset 上述四种容器采用红黑树实现,红黑树是平衡二叉树的一种.不同操作的时间复杂度近似为: 插入: O(logN) 查看:O(logN) 删除 ...