关于linuxPATH的作用.docx

上传人:b****5 文档编号:8205314 上传时间:2023-01-29 格式:DOCX 页数:7 大小:18.94KB
下载 相关 举报
关于linuxPATH的作用.docx_第1页
第1页 / 共7页
关于linuxPATH的作用.docx_第2页
第2页 / 共7页
关于linuxPATH的作用.docx_第3页
第3页 / 共7页
关于linuxPATH的作用.docx_第4页
第4页 / 共7页
关于linuxPATH的作用.docx_第5页
第5页 / 共7页
点击查看更多>>
下载资源
资源描述

关于linuxPATH的作用.docx

《关于linuxPATH的作用.docx》由会员分享,可在线阅读,更多相关《关于linuxPATH的作用.docx(7页珍藏版)》请在冰豆网上搜索。

关于linuxPATH的作用.docx

关于linuxPATH的作用

关于PATH的作用:

PATH说简单点就是一个字符串变量,当输入命令的时候LINUX会去查找PATH里面记录的路径。

比如在根目录/下可以输入命令ls,在/usr目录下也可以输入ls,但其实ls这个命令根本不在这个两个目录下,事实上当你输入命令的时候LINUX会去/bin,/usr/bin,/sbin等目录下面去找你此时输入的命令,而PATH的值恰恰就是/bin:

/sbin:

/usr/bin:

……。

其中的冒号使目录与目录之间隔开。

关于新增自定义路径:

现在假设你新安装了一个命令在/usr/locar/new/bin下面,而你又想像ls一样在任何地方都使用这个命令,你就需要修改环境变量PATH了,准确的说就是给PATH增加一个值/usr/locar/new/bin。

你只需要一行bash命令exportPATH=$PATH:

/usr/locar/new/bin。

这条命令的意思太清楚不过了,使PATH自增:

/usr/locar/new/bin,既PATH=PATH+":

/usr/locar/new/bin";通常的做法是把这行bash命令写到/root/.bashrc的末尾,然后当你重新登陆LINUX的时候(应该是linux启动时就会执行这个文件),新的默认路径就添加进去了。

当然这里你直接用source/root/.bashrc执行这个文件重新登陆了。

你可以用echo$PATH命令查看PATH的值。

关于删除自定义路径:

当某天你发现你新增的路径/usr/locar/new/bin已经没用了的话,你可以修改/root/.bashrc文件里面你新增的路径。

或者你可以修改/etc/profile文件删除你不需要的路径

Linux中的环境变量

分类:

Linux操作系统2010-08-0310:

32234人阅读评论(0)收藏举报

linuxshellpathbashredhatcommand

1、引言

   在linux系统下,如果你下载并安装了应用程序,很有可能在键入它的名称时出现“commandnotfound”的提示内容。

如果每次都到安装目标文件夹内,找到可执行文件来进行操作就太繁琐了。

这涉及到环境变量PATH的设置问题,而PATH的设置也是在linux下定制环境变量的一个组成部分。

本文基于RedHat9.0,详细讲解了环境变量定制的问题。

   2、变量简介

   Linux是一个多用户的操作系统。

每个用户登录系统后,都会有一个专用的运行环境。

通常每个用户默认的环境都是相同的,这个默认环境实际上就是一组环境变量的定义。

用户可以对自己的运行环境进行定制,其方法就是修改相应的系统环境变量。

   3、定制环境变量

   环境变量是和Shell紧密相关的,用户登录系统后就启动了一个Shell。

对于Linux来说一般是bash,但也可以重新设定或切换到其它的Shell。

根据发行版本的情况,bash有两个基本的系统级配置文件:

/etc/bashrc和/etc/profile。

这些配置文件包含两组不同的变量:

shell变量和环境变量。

前者只是在特定的shell中固定(如bash),后者在不同shell中固定。

很明显,shell变量是局部的,而环境变量是全局的。

环境变量是通过Shell命令来设置的,设置好的环境变量又可以被所有当前用户所运行的程序所使用。

对于bash这个Shell程序来说,可以通过变量名来访问相应的环境变量,通过export来设置环境变量。

下面通过几个实例来说明。

   3.1使用命令echo显示环境变量

 --------------------------------------------------------------------------------

   #本例使用echo显示常见的变量HOME

   $echo$HOME

   /home/lqm

 --------------------------------------------------------------------------------

   3.2设置一个新的环境变量

 --------------------------------------------------------------------------------

   $exportHELLO=“Hello!

   $echo$HELLO

   Hello!

 --------------------------------------------------------------------------------

   3.3使用env命令显示所有的环境变量

 --------------------------------------------------------------------------------

   $env

   SSH_AGENT_PID=1875

   HOSTNAME=lqm

   SHELL=/bin/bash

   TERM=xterm

   HISTSIZE=1000

   ……

 --------------------------------------------------------------------------------

   3.4 使用set命令显示所有本地定义的Shell变量

 --------------------------------------------------------------------------------

   $set

   BASH=/bin/bash

   ……

 --------------------------------------------------------------------------------

   3.5 使用unset命令来清除环境变量

 --------------------------------------------------------------------------------

   $exportTEST=“test”      #增加一个环境变量TEST

   $env|grepTEST           #此命令有输出,证明环境变量TEST已经存在了

   TEST=test

   $unset$TEST#删除环境变量TEST

   $env|grepTEST          #此命令无输出,证明环境变量TEST已经存在了

--------------------------------------------------------------------------------

3.6 使用readonly命令设置只读变量

   如果使用了readonly命令的话,变量就不可以被修改或清除了。

示例如下:

 --------------------------------------------------------------------------------

   $exportTEST="Test..."                                       #增加一个环境变量TEST

   $readonlyTEST#将环境变量TEST设为只读

   $unsetTEST#会发现此变量不能被删除

   -bash:

unset:

TEST:

cannotunset:

readonlyvariable

   $TEST="New"#会发现此变量不能被修改

   -bash:

TEST:

readonlyvariable

 --------------------------------------------------------------------------------

   3.7 用C程序来访问和设置环境变量

   对于C程序的用户来说,可以使用下列三个函数来设置或访问一个环境变量。

   getenv()访问一个环境变量。

输入参数是需要访问的变量名字,返回值是一个字符串。

如果所访问的环境变量不存在,则会返回NULL。

   setenv()在程序里面设置某个环境变量的函数。

   unsetenv()清除某个特定的环境变量的函数。

   另外,还有一个指针变量environ,它指向的是包含所有的环境变量的一个列表。

下面的程序可以打印出当前运行环境里面的所有环境变量:

 --------------------------------------------------------------------------------

   #include

   externchar**environ;

   intmain()

   {

   char**var;

   for(var=environ;*var!

=NULL;++var)

   printf("%s/n",*var);

   return0;

   }

 --------------------------------------------------------------------------------

   3.8      通过修改环境变量定义文件来修改环境变量。

   需要注意的是,一般情况下,这仅仅对于普通用户适用,避免修改根用户的环境定义文件,因为那样可能会造成潜在的危险。

 --------------------------------------------------------------------------------

   $cd#到用户根目录下

   $ls-a                                 #查看所有文件,包含隐藏的文件

   $vi.bash_profile                  #修改环境变量定义文件

 --------------------------------------------------------------------------------

   然后编辑你的PATH声明,其格式为:

   PATH=$PATH:

:

:

:

------:

   你可以自己加上指定的路径,中间用冒号隔开。

环境变量更改后,在用户下次登陆时生效,如果想立刻生效,则可执行下面的语句:

$source.bash_profile

   需要注意的是,最好不要把当前路径“./”放到PATH里,这样可能会受到意想不到的攻击。

完成后,可以通过$echo$PATH查看当前的搜索路径。

这样定制后,就可以避免频繁的启动位于shell搜索的路径之外的程序了。

   4总结

   通过以上的设置,你可以有一个比较方便有效的环境来提高你的工作效率了。

Linux环境变量总结

上一篇/下一篇 2010-01-2922:

31:

43/个人分类:

Linux

查看(225)/评论(0)/评分(0/0)

现在每天测试到时候会与Linux打交道,自然也会用到环境变量了。

看了网上几篇文章,结合自己到实践和看法,总结以下Linux的环境变量吧。

一、什么是环境变量?

环境变量相当于给系统或用户应用程序设置的一些参数,具体起什么作用这当然和具体的环境变量相关.

Linux是一个多用户的操作系统。

多用户意味着每个用户登录系统后,都有自己专用的运行环境。

而这个环境是由一组变量所定义,这组变量被称为环境变量。

用户可以对自己的环境变量进行修改以达到对环境的要求。

二、定制环境变量

环境变量是和Shell紧密相关的,它是通过Shell命令来设置的。

环境变量又可以被所有当前用户所运行的程序所使用。

对于bash来说,可以通过变量名来访问相应的环境变量。

下面通过几个实例来说明

1.显示环境变量HOME

$echo$HOME

/home/admin

2.设置一个新的环境变量NAME

$exportNAME="Jay"

$echo$NAME

Jay

3.使用env命令(或export)显示所有的环境变量

$env

HOSTNAME=test

TERM=vt100

SHELL=/bin/bash

HISTSIZE=1000

SSH_CLIENT=202.xxx.xxx.xxx5369422

CATALINA_BASE=/usr/local/jakarta-tomcat

SSH_TTY=/dev/pts/0

ANT_HOME=/usr/local/ant

JAVA_OPTS=-server

USER=admin

...

4.使用set(或declare)命令显示所有本地定义的Shell变量

$set

BASH=/bin/bash

BASH_VERSION='2.05b.0

(1)-release'

CATALINA_BASE=/usr/local/jakarta-tomcat

CATALINA_HOME=/usr/local/jakarta-tomcat

...

5.使用unset命令来清除环境变量

$exportNAME="Jay"

$echo$NAME

Jay

$unsetNAME

$echo$NAME

6.使用readonly命令设置只读变量

$exportNAME="Jay"

$readonlyNAME

$unsetNAME

-bash:

unset:

NAME:

cannotunset:

readonlyvariable

$NAME="New"#会发现此也变量不能被修改

-bash:

TEST:

readonlyvariable

三、常见的环境变量

PATH      决定了shell将到哪些目录中寻找命令或程序

HOME      当前用户主目录

HISTSIZE    历史记录数

LOGNAME    当前用户的登录名

HOSTNAME    指主机的名称

SHELL     前用户Shell类型

LANGUGE    语言相关的环境变量,多语言可以修改此环境变量

MAIL      当前用户的邮件存放目录

PS1      基本提示符,对于root用户是#,对于普通用户是$

PS2      附属提示符,默认是“>”

四、通过C程序来访问和设置环境变量

对于C程序的用户来说,可以使用下列三个函数来设置或访问一个环境变量。

getenv()访问一个环境变量。

输入参数是需要访问的变量名字,返回值是一个字符串。

如果所访问的环境变量不存在,则会返回NULL;

setenv()在程序里面设置某个环境变量的函数;

unsetenv()清除某个特定的环境变量的函数。

另外,还有一个指针变量environ,它指向的是包含所有的环境变量的一个列表。

下面的程序可以打印出当前运行环境里面的所有环境变量:

#include

externchar**environ;

intmain()

{

char**var;

for(var=environ;*var!

=NULL;++var)

printf("%s\n",*var);

return0;

}

五、环境变量文件

通过修改一些相关的环境定义文件来修改环境变量,比如对于多数Linux系统,与环境相关的文件有/etc/profile和~/.bash_profile等。

修改完毕后重新登录一次或运行命令sourcexxx就生效了。

/etc/profile或/etc/bash.bashrc

文件中修改环境变量,在这里修改的内容是对所有用户起作用的;

~/.profile或~/.bashrc文件进行环境变量的编辑,只对当前用户有用。

参考文档:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1