linux 环境变量系统:

系统级别:/etc/profile、/etc/bashrc/ 、/etc/environment

用户级别:~/.profile、~/.bashrc、 ~/.bash_profile 或 ~/.bash_login

https://www.cnblogs.com/lovychen/p/10911699.html

LIBRARY_PATH和LD_LIBRARY_PATH的区别:

https://www.cnblogs.com/lovychen/p/10911600.html

简介:

  PATH和LD_LIBRARY_PATH本质都是变量,所谓变量的意思就是由别人赋值产生的,直觉往往会让我们添加和减少这个变量本身的某些路径,实际上这是不正确的。正确的做法是我们要去修改赋予这个变量数值的那些配置文件,加一条路径或者减一条。说到底变量只关乎显示,不关乎其用于显示的内容。

  首先你可以在命令行输入:echo  $PATH  看看你能看到什么,那是一些 bash 路径,

如下的意思就是往 PATH 里面新增一个/opt/bin的路径,如果不加:$PATH的话,就表示直接把PATH赋值为/opt/bin啦,这样你其他的老路径就丢失了;

  export PATH="/opt/bin:$PATH"

  意思是:你现在配置的path在你需要的/opt/bin的目录下,还要再加上原来系统自带的path环境变量,这样写的目的是为了系统能正常启动,而且终端命令能够正常运行,如果丢掉就会命令无效等等;

如何插入环境变量:

  $PATH:决定了shell将到哪些目录中去寻找命令或者程序,PATH值是一系列的目录,当你要运行一个程序时,Linux在这些目录下进行搜寻编译链接。

  编辑PATH 声明,其格式为:

  PATH=$PATH:<PATH1>:<PATH2>:<PATH3>:------:<PATHN>

  你可以自己加上指定的路径,中间用冒号隔开。环境变量更改后,在用户下次登陆时生效,如果想立刻生效,则可执行下面的语句:$source .bash_profile

 添加环境变量:

注意:

如果export 临时添加环境变量,在脚本中执行的时候,只在该脚本内环境变量有效;

如果是想在该登录账户内有效,则需要,用source 执行该脚本;

1、临时变量的添加:退出登录后失效;

export PATH=$PATH:/XXX  //新的环境变量 加在原有的PATH 后面;
或者
export PATH=/XXX:$PATH  //新的环境变量 加在原有的PATH 前面;
如下所示:注,不能缺失 冒号 :

www@ubuntu:~$ echo $TEST_PATH

www@ubuntu:~$ export TEST_PATH=$TEST_PATH:/home/www/
www@ubuntu:~$ echo $TEST_PATH
:/home/www/
www@ubuntu:~$ export TEST_PATH=$TEST_PATH:/home/www/
www@ubuntu:~$ echo $TEST_PATH
:/home/www/:/home/www/
www@ubuntu:~$ export TEST_PATH=/home/www/:$TEST_PATH
www@ubuntu:~$ echo $TEST_PATH
/home/www/::/home/www/:/home/www/
www@ubuntu:~$ export TEST_PATH=/home/www/123TEST_PATH //忘加 $,直接等于
www@ubuntu:~$ echo $TEST_PATH
/home/www/123TEST_PATH

2、PATH: 可执行程序的查找路径

查看当前环境变量:   echo $PATH

设置如下:

方法一: export PATH=$PATH:/XXX 但是登出后就失效

  上述方法的PATH 在终端关闭后就会消失。所以还是建议通过编辑/etc/profile来改PATH,也可以改自家目录下的.bashrc(即:~/.bashrc)。

方法二:修改 ~/.bashrc 或 ~/.bash_profile 或系统级别的 /etc/profile

    • 1. 在其中添加例如export PATH=/opt/ActivePython-2.7/bin:$PATH
    • 2. source .bashrc (Source命令也称为“点命令”,也就是一个点符号(.)。
    • source命令通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录)

3、LD_LIBRARY_PATH: 动态库的查找路径

查看当前环境变量:   echo $LD_LIBRARY_PATH

设置如下:

方法一: export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/XXX 但是登出后就失效

方法二: 修改 ~/.bashrc 或 ~/.bash_profile 或系统级别的 /etc/profile

    • 1. 在其中添加例如export PATH=/opt/ActiveP/lib:$LD_LIBRARY_PATH
    • 2. source .bashrc (Source命令也称为“点命令”,也就是一个点符号(.)。
    • source命令通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录)

方法三:这个没有修改 LD_LIBRARY_PATH 但是效果是一样的实现动态库的查找;设置稍微麻烦,好处是比较不受用户的限制。

    • 1. /etc/ld.so.conf 下面加一行 /usr/local/mysql/lib
    • 2. 保存过后 ldconfig 一下

ldconfig 命令的用途:

1、在默认搜寻目录(/lib和/usr/lib)以及动态库配置文件/etc/ld.so.conf内所列的目录下,搜索出可共享的动态链接库(格式lib*.so*),进而创建出动态装入程序(ld.so)所需的连接和缓存文件。缓存文件默认为 /etc/ld.so.cache,此文件保存已排好序的动态链接库名字列表

2、为了让动态链接库为系统所共享,需运行动态链接库的管理命令ldconfig,此执行程序存放在/sbin目录下。ldconfig通常在系统启动时运行,而当用户安装了一个新的动态链接库,修改了ld.so.conf时,就需要手工运行这个命令。

3、linux下的共享库机制采用了类似于高速缓存的机制,将库信息保存在/etc/ld.so.cache里边。程序连接的时候首先从这个文件里边查找,然后再到ld.so.conf的路径里边去详细找

ldd 命令的用途:

作用:用来查看程序运行所需的共享库,常用来解决程序因缺少某个库文件而不能运行的一些问题。

语法:ldd(选项)(参数)

选项:

    • --version:打印指令版本号;
    • -v:详细信息模式,打印所有相关信息;
    • -u:打印未使用的直接依赖;
    • -d:执行重定位和报告任何丢失的对象;
    • -r:执行数据对象和函数的重定位,并且报告任何丢失的对象和函数;
    • --help:显示帮助信息。

参数:

文件:指定可执行程序或者文库。

linux命令(11)环境变量:查看和添加环境变量的更多相关文章

  1. linux命令(11)下查看和添加环境变量

    &PATH:决定了shell将到哪些目录中去寻找命令或者程序,PATH值是一系列的目录,当你要运行一个程序时,Linux在这些目录下进行搜寻编译链接. 编辑PATH 声明,其格式为: PATH ...

  2. Linux下查看和添加环境变量

    转自:http://blog.sina.com.cn/s/blog_688077cf01013qrk.html $PATH:决定了shell将到哪些目录中寻找命令或程序,PATH的值是一系列目录,当您 ...

  3. 常见linux命令释义(第五天)——shell变量学习

    由于时间有限,我写这篇博客的时间上限为30分钟.仅作为学习笔记而用,内容会尽量的讲清楚.如果讲的不清楚,你来打我啊! 玩笑开过,正式开始今天的学习. linux系统的中一些命令是在/bin下,这个是一 ...

  4. Linux命令(十)——Shell程序设计一(变量与操作符)

    Shell是linux系统中用户和系统交互的接口,它除了作为命令解释器以外,还是一种高级程序设计语言.在前面介绍的linux命令中,Shell都作为命令解释器出现.下面分两节简单介绍脚本程序设计中的语 ...

  5. Linux 命令集合之进程查看命令-软件安装命令-文件查找命令-主机修改命令

    1.dpkg 的使用 dpkg -s ssh 查看是否按装了ssh软件 dpkg -L ssh 查看ssh安装的关联目录结构和安装位置 dpkg -i vim.deb 本地离线安装vim编辑器 apt ...

  6. Linux命令学习—— fdisk -l 查看硬盘及分区信息

    Linux命令学习(3)-- fdisk -l 查看硬盘及分区信息注意:在使用fdisk命令时要加上sudo命令,否则什么也不能输出linux fdisk 命令和df区别是什么? fdisk工具是分区 ...

  7. 查看修改添加环境变量的工具——Rapid Environment Editor

    工欲善其事,必先利其器! 特别是公司或者有其他限制的时候,更需要一个比较简单.实用.强大的工具了! 原来的公司都是小公司,给电脑安装系统.软件等都是自己直接上手,现在在一个大点的公司了,电脑运维有单独 ...

  8. Linux命令之useradd和userdel(添加、删除用户)

    一.[useradd]:添加用户命令 1.作用 useradd或adduser命令用来建立用户帐号和创建用户的起始目录,使用权限是超级用户. 2.格式 useradd [-d home] [-s sh ...

  9. Linux命令(21)查看文件的行数

    在 linux 系统中没有在 windows 系统中那么方便的点点鼠标就可以操作文件了,对文件的各种操作都必须使用各种命令来完成.比如有时候我们需要在不查看文件内容的情况下需要知道该文件有多少行.这个 ...

随机推荐

  1. 云计算与大数据实验:Hbase shell操作用户表

    [实验目的] 1)了解hbase服务 2)学会hbase shell命令操作用户表 [实验原理] HBase是一个分布式的.面向列的开源数据库,它利用Hadoop HDFS作为其文件存储系统,利用Ha ...

  2. mysql应用

    1.  简述 MySQL是开源的关系型数据库.官网:https://dev.mysql.com/. 2.  安装及应用 可通过https://dev.mysql.com/downloads/下载MyS ...

  3. pinpoint的只是总结

    1,对于拓扑图不显示的原因,可能是hbase版本和pp版本不匹配的原因2,calltree中出现 API-METADATA-NOT-FOUND时是因为HBASE中的元数据被清除了,需要重启应用才可以. ...

  4. Cloudera Certified Associate Administrator案例之Install篇

    Cloudera Certified Associate Administrator案例之Install篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.创建主机模板(为了给主 ...

  5. spring boot 过滤器、拦截器的区别与使用

    原文:https://blog.csdn.net/heweimingming/article/details/79993591 拦截器与过滤器的区别: 1.过滤器和拦截器触发时机不一样,过滤器是在请求 ...

  6. .Net Core控制台生成exe能独立运行

    .Net Core控制台生成exe能独立运行,依赖文件都单独生成在一个publish文件夹里 方式一:强烈推荐,能独立运行,依赖DLL也会生成出来,支持无安装环境也能到处运行 按win+R输入cmd在 ...

  7. C# CefSharp如何在Winforms应用程序中使用

    最近做了一个很小的功能,在网页上面打开应用程序,用vs的debug调试,可以正常打开应用程序,可布置到iis上面却无法运行应用程序,吾百度之,说是iis权限问题,吾依理做之,可怎么折腾也不行.最后bo ...

  8. 《逆袭团队》第九次团队作业【Beta】Scrum Meeting 1

    项目 内容 软件工程 任课教师博客主页链接 作业链接地址 团队作业9:Beta冲刺与团队项目验收 团队名称 逆袭团队 具体目标 (1)掌握软件黑盒测试技术:(2)学会编制软件项目总结PPT.项目验收报 ...

  9. Bagging and Random Forest

    Bagging和随机森林RF. 随机森林是最受欢迎和最强大的机器学习算法之一.它是一种称为Bootstrap Aggregation或bagging的集成机器学习算法. bootstrap是一种强大的 ...

  10. BZOJ 1034: [ZJOI2008]泡泡堂BNB 贪心+排序

    比较神奇的贪心 有点类似于田忌赛马. 如果我方最弱强于对面最弱,则直接最弱pk最弱. 如果我方最强强于对面最强,那么直接最强间pk. 否则,试着用我方最弱 pk 对方最强,看是否能打成平手. code ...