Linux系统下各种环境变量都通过修改/etc/profile文件来实现。由于是系统文件,修改此文件需要root权限。因此实现以下功能都需要用户拥有root权限。

另:不要轻易修改profile文件中的现有内容。应在保证原有内容不变的前提下,在文件的最后插入新的一行。

1.路径变量PATH

当用户在某工作目录执行一个命令或者可执行程序时,若当前路径下不存在该程序,则系统将从PATH路径列表中查找指定的应用程序。还记得java命令,ping命令么?这些应用程序所在的文件夹都包含在了PATH路径中。

修改方法:在profile文件末尾插入新的一行,写入 export PATH={YourPath}:$PATH

解释一下:这里{YourPath}表示你要加入到PATH中的一个目录。例如,你要将/home/jack/apps/目录加入到PATH中,则这样写: export PATH=/home/jack/apps/:$PATH

等号后边的表达式中,多个路径以英文冒号分隔。最后一定要加入$PATH。因为这表示在原有PATH环境变量的基础上追加了若干个目录。Linux系统中获取环境变量的方法即美元符号$+变量名。当你设置好后保存该文件。等等,这并不会立即生效。这种设置是全局的。无论当前系统中有多少个用户,都会在环境变量PATH中增加该条记录。因此系统必须重新启动之后才能真正应用上。好了,重新启动后,在终端中输入 echo $PATH 看看新加入到路径是否已经显示出来了。这个例子只是个初级扫盲,接下来所描述的内容将不会这么罗嗦。

2.添加库默认加载路径LD_LIBRARY_PATH

export LD_LIBRARY_PATH={YourPath}:$LD_LIBRARY_PATH

加入此环境变量的目的是允许系统从用户自定义的目录中加载库(有点像Windows中的dll)。这样如果你有一个软件,需要依赖很多库,但又不想破坏系统原有的纯净,则可将所有库放入一个文件夹内,然后将该文件夹添加至LD_LIBRARY_PATH环境变量。

3.添加gcc默认的include目录C_INCLUDE_PATH

export C_INCLUDE_PATH={YourPath}:$C_INCLUDE_PATH

如果你使用gcc来编译你的C程序,你又安装了某个第三方的C库。你可以将库中的头文件放到一个目录中,然后将该目录作为gcc默认的查找头文件目录。这样你在编译的时候就可以少加入一个“-I”参数,编译器会自动从原有目录和你设置的目录中查找引用的头文件。

Ubuntu 10.04 中常用的INCLUDE目录为

/usr/include
/usr/include/c++/4.4
/usr/include/c++/4.4/backward
/usr/include/c++/4.4/i686-linux-gnu
/usr/lib/gcc/i686-linux-gnu/4.4.5/include
/usr/lib/gcc/i686-linux-gnu/4.4/include-fixed
/usr/local/include

4.添加g++默认的include目录CPLUS_INCLUDE_PATH

export CPLUS_INCLUDE_PATH={YourPath}:$CPLUS_INCLUDE_PATH
意义同上面的那一条相同,只不过是针对g++编译器的。

后面再接触到新的内容时,我会及时在文章里添加。也欢迎朋友们提供。谢谢了。

Linux下各种常见环境变量的配置的更多相关文章

  1. Java java jdk在Linux下安装与环境变量的配置

    java jdk在Linux下安装与环境变量的配置 by:授客 QQ:1033553122 linux环境:CentOS-6.0-x86_64-bin-DVD1.iso [root@localhost ...

  2. 嵌入式 Linux下永久生效环境变量bashrc

    嵌入式 Linux下永久生效环境变量bashrc 1) .bashrc文件 在linux系统普通用户目录(cd /home/xxx)或root用户目录(cd /root)下,用指令ls -al可以看到 ...

  3. 14行脚本配置Linux下一个Java环境变量

    供Java人们刚开始学习.多半Java它需要花费大量的精力在开发环境的配置,于Linux下一个,构造Java环境变量,很可能加入这一努力. 为此,我做了一个bash脚本来配置自己主动Java环境变量. ...

  4. Linux下设置oracle环境变量

    Linux设置Oracle环境变量 方法一:直接运行export命令定义变量,该变量只在当前的shell(BASH)或其子shell(BASH)下是有效的,shell关闭了,变量也就失效了,再打开新s ...

  5. linux下添加PATH环境变量

    添加PATH环境变量,第1种方法:[root@lx_web_s1 ~]# export PATH=/usr/local/webserver/mysql/bin:$PATH 再次查看: [root@lx ...

  6. Windows下Java JDK环境变量的配置

    注意:前提是你已经在电脑上安装了JDK 1.打开控制面板—系统和安全—系统,选择高级系统设置 2.选择环境变量 3. 然后看看用户变量中有没有JAVA_HOME和CLASSPATH变量 4.新建JAV ...

  7. 解决修改 Linux 下的 PHP 环境变量不生效的方法

    这个问题出现服务器有多个 PHP 版本,php -v和phpinfo()显示两个不同的版本 最近真的,都给朋友解决问题了... phpinfo查看的 php 版本是 7.2.6,到 bash 去使用p ...

  8. Linux学习,path,环境变量的配置

    方法一: 1.查看当前环境变量配置的所与信息 echo $PATH 注意: echo是输出的意思 加$表示它是一个变量 2.配置环境命令 PATH="$PATH":comdir 注 ...

  9. linux下设置phantomjs环境变量

    1)vim /etc/profile2)在文件的最后一行,添加安装路径path语句:(注意路径是phantomjs的安装路径)export PATH=${PATH}:/usr/local/src/ph ...

随机推荐

  1. Java [leetcode 26]Remove Duplicates from Sorted Array

    题目描述: Given a sorted array, remove the duplicates in place such that each element appear only once a ...

  2. hbase分页查询

    为了广大技术爱好者学习netty,在这里帮新浪微博@nettying宣传下他出版的新书 <netty权威指南>@nettying兄在华为NIO实践多年,这本书是他的技术和经验的一个结晶.N ...

  3. JAVACC详解

    JavaCC(Java Compiler Compiler)是一个用JAVA开发的最受欢迎的语法分析生成器.这个分析生成器工具可以读取上下文无关且有着特殊意义的语法并把它转换成可以识别且匹配该语法的J ...

  4. 开源了一个iOS输入控件【原】

    1.Github 地址:https://github.com/linyc/InputBarFollowKeyboard 2.说明文档:https://github.com/linyc/InputBar ...

  5. Swift之基础知识

    Swift之基础知识 出于对Swift3.0的学习,写下这篇基本语法的笔记.希望能帮助记忆 -0- 这边提供Swift3.0中文教材,资源链接: https://pan.baidu.com/s/1c2 ...

  6. SimpleHttpServer的学习之总体架构

    http://www.cnblogs.com/hansongjiang/p/4213491.html 从代码中我们看到SimpleHttpServer这个类直接依赖4个类,但是最重要的类,当属其属性, ...

  7. POJ3264 Balanced Lineup 线段树区间最大值 最小值

    Q个数 问区间最大值-区间最小值 // #pragma comment(linker, "/STACK:1024000000,1024000000") #include <i ...

  8. 从代码都发布遇到的问题总结(C#调用非托管dll文件,部署项目) 转

    http://www.cnblogs.com/Purple_Xiapei/archive/2012/06/30/2570928.html

  9. HW5.33

    import java.util.Calendar; public class Solution { public static void main(String[] args) { long tot ...

  10. hdu5773--The All-purpose Zero(LIS变形)

    题意:给一个非负整数的数列,其中0可以变成任意整数,包括负数,求最长上升子序列的长度. 题解:LIS是最简单的DP了,但是变形之后T^T真的没想到.数据范围是10^5,只能O(nlogn)的做法,所以 ...