您的位置:首页 > 运维架构 > Linux

Linux命令常放置的位置与PATH变量设置 网上转载稍加修改

2015-05-23 01:35 477 查看
Linux命令常放置的位置与PATH变量设置

Linux命令常放置的位置

[code]    LInux命令提供的命令极多,而且不同的linux系统提供的命令和用法也不尽相同,我们可以运行set |grep PATH 命令查看PATH参数所设置的目录(一般至少有/bin、/usr/bin、/usr/local/bin),再到这些目录查看他提供了哪些文件:


[root@free root] # set |grep PATH

[code]     先用set命令显示环境变量,再以grep搜索PATH字符串的行:


PATH=/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/beangr/bin

[code]     这些都是执行命令时会搜索的路径,以“:”分隔。


PATH环境变量设置

[code]     PATH是环境变量,要大写;那几个目录是放置命令的目录,输命令后系统会去PATH中寻找该命令;

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

     设置:export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

     或者export PATH=PATH:/XXX

     登出后就失效,要一直有效,需要修改~/.bashrc或~/.bash_profile或系统级别的/etc/profile文件。


修改.bashrc文件

如果要添加/root目录,只需在fi后面添加export PATH=/root:$PATH

[root@localhost /]# vi/root/.bashrc

.bashrc

User specific aliases and functions

alias rm=rm -i

alias cp=cp -i

alias mv=mv -i

Source global definitions

if [ -f /etc/bashrc ]; then

. /etc/bashrc

fi

export PATH=/root:$PATH

或修改/etc/profile文件

如:/etc/profile文件打开后有如下代码 :

Path manipulation

[code]if [ "$EUID" = "0" ]; then
pathmunge /sbin
pathmunge /usr/sbin
pathmunge /usr/local/sbin


else

pathmunge /usr/local/sbin after

pathmunge /usr/sbin after

pathmunge /sbin after

fi

添加pathmunge /usr/local/arm/bin将之改成:

Path manipulation

[code]if [ "$EUID" = "0" ]; then
pathmunge /sbin
pathmunge /usr/sbin

pathmunge /usr/local/sbin

pathmunge  /usr/local/arm/bin


else

[code]pathmunge  /usr/local/arm/bin after
pathmunge /usr/local/sbin after
pathmunge /usr/sbin after
pathmunge /sbin after


fi————————————————————————————

表示将/usr/local/arm/bin添加进环境变量。

文件修改并保持完以后,运行source /etc/profile命令即可使修改操作立即生效。

摘自网上,网址不记得了。

如下三种方法来设置环境变量:

1、直接用export命令:

export PATH=$PATH:/opt/au1200_rm/build_tools/bin

2、修改profile文件:

vi /etc/profile

在里面加入:

export PATH=“$PATH:/opt/au1200_rm/build_tools/bin”

修改.bashrc文件:

vi /root/.bashrc

在里面加入:

export PATH=“$PATH:/opt/au1200_rm/build_tools/bin”

后两种方法一般需要重新注销系统才能生效,最后可以通过echo命令测试一下:

echo $PATH

看看输出里面是不是已经有了/my_new_path这个路径了。

“/bin”、“/sbin”、“/usr/bin”、“/usr/sbin”、“/usr/local/bin”等路径已经在系统环境变量中了,如果可执行文件在这几个标准位置,在终端命令行输入该软件可执行文件的文件名和参数(如果需要参数),回车即可。

如果不在标准位置,文件名前面需要加上完整的路径。不过每次都这样跑就太麻烦了,一个“一劳永逸”的办法是把这个路径加入环境变量。命令 “PATH=$PATH:路径”可以把这个路径加入环境变量,但是退出这个命令行就失效了。要想永久生效,需要把这行添加到环境变量文件里。有两个文件可 选:“/etc/profile”和用户主目录下的“.bash_profile”,“/etc/profile”对系统里所有用户都有效,用户主目录下 的“.bash_profile”只对这个用户有效。

“PATH=PATH:路径1:路径2:。..:路径n”,意思是可执行文件的路径包括原先设定的路径,也包括从“路径1”到“路径n”的所有路径。当用户输入一个一串字符并按回车后,shell会依次在这些路径里找对应的可执行文件并交给系统核心执行。那个“PATH:路径1:路径2:。..:路径n”,意思是可执行 文件的路径包括原先设定的路径,也包括从“路径1”到“路径n”的所有路径。当用户输入一个一串字符并按回车后,shell会依次在这些路径里找对应的可 执行文件并交给系统核心执行。那个“PATH”表示原先设定的路径仍然有效,注意不要漏掉。某些软件可能还有“PATH”以外类型的环境变量需要添加, 但方法与此相同,并且也需要注意“$”。

注意,与DOS/Window不同,UNIX类系统环境变量中路径名用冒号分隔,不是分号。另外,软件越装越多,环境变量越添越多,为了避免造成混乱,建议所有语句都添加在文件结尾,按软件的安装顺序添加。

格式如下():

软件名-版本号

PATH=$PATH:路径1:路径2:。..:路径n

其他环境变量=$其他环境变量:。..

在“profile”和“.bash_profile”中,“#”是注释符号,写在这里除了视觉分隔外没有任何效果。

设置完毕,注销并重新登录,设置就生效了。如果不注销,直接在shell里执行这些语句,也能生效,但是作用范围只限于执行了这些语句的s

hell。

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////第二种方式

修改/etc/profile 找到

Path manipulation

if [
id -u
= 0 ]; then

pathmunge /sbin

pathmunge /usr/sbin

pathmunge /usr/local/sbin //添加只对root用户有效

fi

pathmunge /usr/X11R6/bin after

再pathmunge里加上一行你自己的路径

例如

Path manipulation

if [
id -u
= 0 ]; then

pathmunge /sbin

pathmunge /usr/sbin

pathmunge /usr/local/sbin

pathmunge /usr/local/mysql/bin<–新加的

pathmunge /usr/local/bind921/bin<–新加的

pathmunge /usr/local/bind921/sbin<–新加的

fi

pathmunge /usr/X11R6/bin after

保存重新登陆即可生效,如果只修改自己的路径在你home目录下修改.bash_profile找到PATH=PATH:PATH:HOME/bin加上你自己的路径,例如

PATH=PATH:PATH:HOME/bin:/usr/local/mysql/bin

保存重新登陆即可生效

unset pathmunge

unset pathmunge

相关的环境变量生效后,就不必老跑到软件的可执行文件目录里去操作了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: