set、env、export的区别
set:显示当前shell的变量,包括当前用户的用户变量
env:显示用户变量
export:显示当前导出成用户变量的shell变量
举例来说:
root@kali:~# aaa=bbb 设置一个变量,此时设置的变量为shell变量
root@kali:~# echo $aaa 显示刚刚设置的变量
bbb
root@kali:~# set|grep aaa 显示并搜索当前的shell变量,找到刚刚设置的aaa变量
aaa=bbb
root@kali:~# env |grep aaa 显示并搜索当前登录用户的变量,因为aaa是shell变量,所以搜索不到
root@kali:~# export aaa 将aaa这个shell变量导出成用户变量
root@kali:~# env |grep aaa 这个时候搜索用户变量就可以搜索出aaa
aaa=bbb
root@kali:~#
每个shell都有自己特有的变量,这和用户变量是不同的。当前用户变量和你用什么shell无关,不管你用什么shell都是存在的。比如HOME,SHELL等这些变量,但shell也有自己的变量,不同的shell是不同的,比如BASH_ARGC, BASH等,这些变量只有set才会显示,是bash特有的。export不加参数的时候,显示哪些变量被导出成了用户变量,因为一个shell自己的变量可以通过export “导出”变成一个用户变量。
清除环境变量用unset命令,set env export设置的变量,都可以用unset来清除
另外,shell(这里指bash)的初始化过程是这样的:
1.bash 检查文件/etc/profile 是否存在
2. 如果存在,bash 就读取该文件,否则,跳过
3.bash 检查主目录下的文件.bash_profile 是否存在。
4. 如果存在,bash 就读取該文件,否则,跳过
5.bash 检查主目录下的.bash_login 是否存在。
6. 如果存在,bash 就读取该文件,否则,跳过
7.bash 检查主目录下的文件.profile 是否存在
8. 如果存在, bash 就读取该文件,否则,跳过。
这些步骤都执行完后,就出现提示符了, ksh 默认提示符是 $.
参考引用
http://www.opsers.org/base/set-env-and-export-the-difference-between-the-three-command.html
http://blog.csdn.net/longxibendi/article/details/6125075
http://www.linuxeden.com/html/sysadmin/20080424/56879.html
set、env、export的区别相关推荐
- Shell环境变量以及set,env,export的区别
原文连接:http://www.linuxidc.com/Linux/2011-08/40478.htm 一.shell环境变量的分类以及set env export的区别: set:显示(设置)sh ...
- Linux set命令参数及与env, export的区别
原文连接:http://blog.csdn.net/bytxl/article/details/24983423 linux set 命令 功能说明:设置shell. 语 法:set [+-abCd ...
- shell变量/环境变量和set/env/export用法_转
转自:shell环境变量以及set,env,export的区别 一.shell环境变量的分类以及set env export的区别: set:显示(设置)shell变量,包括的私有变量以及用户变量.不 ...
- set, setenv, export的区别
set, setenv, export的区别 写在前头,首先要认识何为环境变量 环境变量(environment variables)一般是指在操作系统中用来指定操作系统运行环境的一些参数,如:临时文 ...
- 变量相关命令(env,export,set,read, array, declare)
http://blogold.chinaunix.net/u3/93184/showart_1868073.html 查询变量:env,export,set env 是 environment (环境 ...
- SVN中检出(check out) 和 导出(export) 的区别
SVN是常用的一种常见的版本控制软件.SVN中检出(check out) 和 导出(export) 的区别主要有如下几条: check out跟check in对应,export跟import对应. ...
- docker save 与 docker export 的区别
缘起 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. docker save和docker export都能导出镜像包,咋看起来区别似乎不大.本文就 ...
- Linux - #!/bin/bash 和 #!/usr/bin/env bash 的区别
起因 为什么会想到写 #!/bin/bash 和 #!/usr/bin/env bash 的区别呢?还要从一次装插件的过程说起. 由于刚开始接触 Shell Script 不久,对一些语法用法等还不是 ...
- docker save与docker export的区别
http://cnodejs.org/topic/59a2304f7aeedce818249eeb 缘起 docker save和docker export都能导出镜像包,咋看起来区别似乎不大.本文就 ...
最新文章
- 直接依赖,间接依赖,可选依赖,排除依赖,依赖冲突
- 无法挂载 NTFS格式的分区:mount: unknown filesystem type ‘ntfs’
- CentOS 6.7 如何启用中文输入法
- HDU 2516 取石子游戏 斐波纳契博弈
- [CF/AT]各大网站网赛 体验部部长第一季度工作报告
- NanUI文档 - 如何实现C#与Javascript的相互通信
- 教你怎样做好计划 将愿望慢慢实现
- 使用jmeter 上传文件
- 纯前端控件集 WijmoJS 2018V2发布,提供可视化设计器,在React、Vue和Angular中的更易用...
- 可通过http获取远端服务信息_(二)NebuLogMvcSample如何获取应用日志并定制输出...
- L1-017 到底有多二 (15 分) C语言
- TortoiseSVN常见用法
- 游戏鼠标的dpi测试软件,鼠标dpi查看_自己就可以测试鼠标的DPI
- Android push到/system/app下,导致找不到so文件,抛出java.lang.UnsatisfiedLinkError的原因分析和解决方案
- 面向对象:找个温暖的人一起慢慢变老
- 一键解锁,2022阿里顶会创新技术前沿进展
- 微信web开发者工具 linux,Linux微信web开发者工具
- cos和sin的使用
- 第一届PyCon China小记
- 计算机公式与函数试题,计算机国考样题EXCEL之公式与函数的应用一
热门文章
- AXI_Lite 总线详解
- 武汉市洪山区高新技术企业认定奖励标准及申请材料、条件、要求
- docker nginx部署.net core后端站点和angular前端站点
- Ubuntu系统下卸载命令apt-get remove/purge/autoremove/clean/autoclean的区别
- 【英语阅读】纽约时报 | 乔布斯是对的:手机和iPad杀死了个人电脑
- windows安装kerberos,及通常问题解决
- 【ML4CO论文精读】具有离散拆分送货和取货的车辆路径问题的禁忌搜索算法(Meng Qiu, 2018)
- 设置了监视哨的顺序查找算法效率高?你确定吗?
- 全栈合一:万物互联下的智能安全运维
- [AV1] AV1 Encoder代码流程图