Linux 学习笔记 Linux环境变量初稿
set命令会显示为某个特定进程设置的所有环境变量,但不包括一些没有设置值的默认环境变量
可以通过等号来给环境变量赋值,值可以是数值或字符串
如果要给变量赋一个含有空格的字符串值,必需用单引号来界定字符串的开始和末尾
没有单引号的话,bash shell会以为下个字符串是另一个要执行的命令。
(赋值表达式中不要放等号)
创建全局环境变量的方法是先创建一个局部环境变量,然后再把它导出到全局环境中
export命令
unset命令
删除环境变量
PASH 冒号分隔的shell查找命令的目录列表
Linux系统用环境变量来在程序和脚本中标识自己。
在用户登录Linux系统启动一个bash shell时,默认情况下,bash在几个文件中查找命令。这些启动文件取决于你启动bash shell的方式。
方式一 登录shell
/etc/profile
是系统上默认的bash shell的主启动文件,系统上每个用户登录的时候(哪怕不开启bash shell)都会执行这个启动文件。
这个文件export了PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL几个全局变量
逐一访问位于/etc/profile.d目录下的每一个文件,这个目录为Linux系统提供了一个集中存放用户登录时要执行的应用(vim,color,ssh,lang,less,which等)专属的启动文件的地方。
$HOME(当前用户的主目录)目录下的启动文件($HOME/.bash_profile;$HOME/.bash_login;$HOME/.profile)
这三个启动文件起着同一个作用:提供一个用户专属的启动文件来定义用户专有的环境变量
$HOME/.bash_profile启动文件会先去检查HOME目录中是不是还有另一个叫.bashrc的启动文件(这个文件有两个作用:一是查看/etc目录下的公用bashrc文件 ,二是为用户提供一个定制自己的命令别名和私有脚本函数的地方)。如果有的话,启动文件会先去执行它里面的命令。下一步,启动文件将一个目录加到了PATH环境变量,在HOME目录下提供了一个放置可执行文件的通用位置。(PATH=$PATH:$HOME/bin,启动/etc/profile文件的时候,提供了PATH的全局变量,可以在HOME/bin下放置一些可执行文件,则登录之后可以在用户主目录下的任何位置执行这些可执行文件)
用户在这几个文件中定制自己想要的环境变量和启动脚本。
方式二 交互式shell
不是登录系统时启动的bash shell称为交互式shell。
交互式shell不会去访问/etc/profile文件,而会去用户的HOME目录检查.bashrc是否存在。
这个文件有两个作用:一是查看/etc目录下的公用bashrc文件 ,二是为用户提供一个定制自己的命令别名和私有脚本函数的地方。
通用的/etc/bashrc启动文件会被系统上每个启动交互式shell会话的用户执行,该文件也会执行位于/etc/profile.d目录下的那些应用专属的启动文件。
方式三 非交互式shell
系统执行shell脚本时用的就是这种shell。
可变数组
值放在括号里,值与值之间用空格分隔
使用命令别名
命令别名允许为通用命令(和它们的参数一起)创建一个别名
alias -p
查看已有的别名列表
bash shell在启动交互式shell时总会读取位于$HOME/.bashrc的启动文件。那里是创建命令别名的好地方。
Linux 学习笔记 Linux环境变量初稿的更多相关文章
- linux —— 学习笔记(环境变量的设置)
目录 环境变量概要 与环境变量相关的文件 设置环境变量 注意以及相关 1.环境变量概要 环境变量,简单来说,是储存了环境信息的变量.它可以让你在不指明全部路径的情况下执行某脚本或某应用程序,比如在 l ...
- Linux学习笔记 1 环境变量 2 vi命令
1 环境变量篇 1.1 修改 查看 生效 系统环境变量 1 涉及系统环境变量的文件 --> .bash_profile --> /etc/profile 2 该文件位置 /root ...
- Linux学习笔记-Linux系统简介
Linux学习笔记-Linux系统简介 UNIX与Linux发展史 UNIX是父亲,Linux是儿子. UNIX发行版本 操作系统 公司 硬件平台 AIX IBM PowerPC HP-UX HP P ...
- Linux学习,path,环境变量的配置
方法一: 1.查看当前环境变量配置的所与信息 echo $PATH 注意: echo是输出的意思 加$表示它是一个变量 2.配置环境命令 PATH="$PATH":comdir 注 ...
- LINUX学习笔记——LINUX下EXP命令全库备份数据库文件
LINUX下EXP命令全库备份数据库文件 1)建立备份目录,目录操作权限授权给Oracle用户 mkdir /backup --创建backup文件夹 cd / --进入cd语句 ls -l ...
- #Linux学习笔记# Linux文件的属性以及权限说明
1. Linux文件的属性 关于Linux文件的属性的说明和设置请参考鸟哥Linux私房菜:Linux 的文件权限与目录配置 2. 目录和文件的权限意义 在Linux系统中,每个文件都有三种身份的权限 ...
- #Linux学习笔记# Linux文件的所有者、群组和其他人
1.关于所有者.群组和其他人 在Linux系统中,每个文件都具有User.Group和Others三种身份的权限配置.那这三种身份分别表示什么意思呢?配置这三种身份的权限有啥意义呢? (1)文件所有者 ...
- #Linux学习笔记# Linux在线帮助文档man page
man是manual的简称,表示手册页.Linux系统的帮助手册页是按照章节(SECTION)来存储了.man手册页分为下面几个章节. 1 普通命令 2 内核提供的系统调用 3 库调用(C库函数) 4 ...
- linux 学习笔记 Linux内核的四大功能简介
一 内存管理 默认情况下,运行在Linux系统上的每个进程都有各自的内存页面:进程不能访问其他进程正在使用的内存页面. 内核维护着自己的内存区域 用户进程不能访问内核进程的内存 可以创建一些共享内存页 ...
随机推荐
- PHP中的替代语法
今天看了一下wordpress的代码,里面有些少见的php替代语法, <?php else : ?> <div class="entry-content"> ...
- XNA Game Studio 4.0 Programming 随便读,随便记 “Game Class”
XNA 中的 Game 类,是所有神奇事情发生的地方.几乎游戏中所有的事情都由它来操办. 它是项目中的王者,让我们深入窥探一番: 虚方法 Game 本身从众多其它地方继续了许多能力才能完成游戏中的事情 ...
- oc_转_构造对象的方法,以及类的继承
一.构造方法 (一)构造方法的调用 完整的创建一个可用的对象:Person *p=[Person new]; New方法的内部会分别调用两个方法来完成2件事情: 1) 使用alloc方法来分配存储空间 ...
- C语言——递归练习
1.炮弹一样的球状物体,能够堆积成一个金字塔,在顶端有一个炮弹,它坐落在一个4个炮弹组成的层面上,而这4个炮弹又坐落在一个9个炮弹组成的层面上,以此类推.写一个递归函数CannonBall,这个函数把 ...
- C# 引用类型的"祸害"
前端时间刚刚弄完一个项目,终于有时间来总结与回顾了. 项目需求:给用户发送邮件,邮件分为系统邮件和个人邮件,需要按时间.未读降序排列. 一开始以为,这是一个很简单的需求,给邮件建了一个对象: clas ...
- Hadoop上路-03_Hadoop JavaAPI
一.Eclipse安装 1.下载解压 下载:http://www.eclipse.org/downloads/ 解压:SHELL$ sudo tar -zxvf eclipse.tar.gz 2.快捷 ...
- leetcode@ [336] Palindrome Pairs (HashMap)
https://leetcode.com/problems/palindrome-pairs/ Given a list of unique words. Find all pairs of dist ...
- 03 javadoc
javadoc从程序源代码中抽取类.方法.成员等注释形成一个和源代码配套的API帮助文档 1.标签.命令格式: 2.使用方式: 2.1 dos命令行格式:javadoc XXX.java 2.2 ec ...
- Android问题-打开DelphiXE8与DelphiXE10新建一个空工程提示"out of memory"
错误信息: [DCC Error] E2597 d:\XE8\Embarcadero\Studio\16.0\PlatformSDKs\android-ndk-r9c\toolchains\arm-l ...
- 开发程序过程中遇到的调用Web Api小问题
在用Umbraco Web Api开发程序时,前端使用React调用Web Api 当时是有一个页面Search.cshtml,把用React产生的脚本代码,在这个页面进行引用 写了一个Api, 调用 ...