linux export命令参数及用法详解--linux设置环境变量命令

    xiaoxiao2021-03-25  101

    linux export命令参数及用法详解--linux设置环境变量命令

    功能说明:设置或显示环境变量。 语  法:export [-fnp][变量名称]=[变量设置值] 补充说明:在shell中执行程序时,shell会提供一组环境变量。export可新增,修改或删除环境变量,供后续执行的程序使用。export的效力仅及于该此登陆操作。 参  数:  -f  代表[变量名称]中为函数名称。  -n  删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中。  -p  列出所有的shell赋予程序的环境变量。

    设置系统环境变量在本站下面这两篇文章中有详细说明:

    设置环境变量永久生效 export PS1 :http://www.linuxso.com/a/linuxxitongguanli/1812.html

    Linux 设置全局环境变量的三种方法:http://www.linuxso.com/a/linuxrumen/3868.html

     

         一个变量创建时,它不会自动地为在它之后创建的shell进程所知。而命令export可以向后面的shell传递变量的值。当一个shell脚本调用并执行时,它不会自动得到原为脚本(调用者)里定义的变量的访问权,除非这些变量已经被显式地设置为可用。export命令可以用于传递一个或多个变量的值到任何后继脚本。     

           登录到系统后,系统将启动一个用户shell。在这个shell中,可以使用shell命令或声明变量,也可以创建并运行shell脚本程序。运行shell脚本程序时,系统将创建一个子shell。此时,系统中将有两个shell,一个是登录时系统启动的shell,另一个是系统为运行脚本程序创建的shell。当一个脚本程序运行完毕,它的脚本shell将终止,可以返回到执行该脚本之前的shell。从这种意义上来说,用户可以有许多shell,每个shell都是由某个shell(称为父shell)派生的。   

           在子shell中定义的变量只在该子shell内有效。如果在一个shell脚本程序中定义了一个变量,当该脚本程序运行时,这个定义的变量只是该脚本程序内的一个局部变量,其他的shell不能引用它,要使某个变量的值可以在其他shell中被改变,可以使用export命令对已定义的变量进行输出。   

            export命令将使系统在创建每一个新的shell时定义这个变量的一个拷贝。这个过程称之为变量输出。

      #echo $PKG_PATH 在任何时候建立的变量都只是当前shell的局部变量,所以不能被shell运行的其他命令或shell程序所利用。 export ,是把你设置的环境变量传给当前SHELL的子SHELL,使其在子SHELL中有效。

    扩展阅读:linux 的export 和source命令

     

    linux 的export 和source命令  

    在任何时候建立的变量都只是当前shell的局部变量,所以不能被shell运行的其他命令或shell程序所利用。 export ,是把你设置的环境变量传给当前SHELL的子SHELL,使其在子SHELL中有效

    source命令(从 C Shell 而来)是bash shell的内置命令。点命令,就是一个点符号,(从Bourne Shell而来)是source的另一名称。这两个命令都以一个脚本为参数,该脚本将作为当前shell的环境执行,即不会启动一个新的子进程。所有在脚 本中设置的变量将成为当前Shell的一部分。同样的,当前脚本中设置的变量也将作为脚本的环境,source(或点)命令通常用于重新执行刚修改的初始 化文件,如 .bash_profile 和 .profile 等等。例如,如果在登录后对 .bash_profile 中的 EDITER 和 TERM 变量做了修改,则可以用source命令重新执行 .bash_profile 中的命令而不用注销并重新登录。象 .bash_profile 或其它类似的Shell脚本这样,文件无需可执行权限即可用source或点命令执行。

     

    source命令的一个妙用

     

    在编译核心时,常常要反复输入一长串命令,如

    make mrproper

    make menuconfig

    make dep

    make clean

    make bzImage

    .......

    这些命令既长,又繁琐。而且有时候容易输错,浪费你的时间和精力。如果把这些命令做成一个文件,让它自动按顺序执行,对于需要多次反复编译核心的用 户来说,会很方便。用source命令可以办到这一点。它的作用就是把一个文件的内容当成是shell来执行。先在/usr/src/linux- 2.4.20目录下建立一个文件,取名为make_command:

    在其中输入如下内容:

    make mrproper &&

    make menuconfig &&

    make dep &&

    make clean &&

    make bzImage &&

    make modules &&

    make modules_install &&

    cp arch/i386/boot/bzImge /boot/vmlinuz_new &&

    cp System.map /boot &&

    vi /etc/lilo.conf &&

    lilo -v

    文件建立好之后,以后每次编译核心,只需要在/usr/src/linux-2.4.20下输入

    source make_command

    就行了。这个文件也完全可以做成脚本,只需稍加改动即可。这里主要是让大家理解source的用法。如果你用的不是lilo来引导系统,可以把最后两句话去掉。配置你自己的引导程序来引导新内核。

     

    shell编程中的命令有时和C语言是一样的。&&表示与,||表示或。把两个命令用&&联接起来,如 make mrproper && make menuconfig ,表示要第一个命令执行成功才能执行第二个命令。对执行顺序有要求的命令能保证一旦有错误发生,下面的命令不会盲目地继续执行。  

    一天一个 linux命令-----export   功能说明:设置或显示环境变量。   语  法:export [-fnp][变量名称]=[变量设置值]   补充说明:在shell中执行程序时,shell会提供一组环境变量。export可新增,修改或删除环境变量,供后续执行的程序使用。export的效力仅及于该此登陆操作。   参  数: -f  代表[变量名称]中为函数名称。 -n  删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中。 -p  列出所有的shell赋予程序的环境变量。 案 例: 安装me mcache模块   [root@localhost]# cd memcache-2.1.0 [root@localhost]#export PHP_PREFIX=/usr/local/server/php [root@localhost]#$PHP_PREFIX/bin/phpize [root@localhost]#./configure -- enable-eaccelerator=shared --with-php-config=$PHP_PREFIX/bin/php-config [root@localhost]#make && make install

    转载请注明原文地址: https://ju.6miu.com/read-19578.html

    最新回复(0)