为了账号安全,请及时绑定邮箱和手机立即绑定

linux 下export 命令有什么用

linux 下export 命令有什么用

交互式爱情 2019-04-09 20:23:22
在/etc/profile中有PATH变量,PATH=$PATH:/usr/local/php-5.5/bin与exportPATH=$PATH:/usr/local/php-5.5/bin有什么区别?========source命令是在当前的shell中执行shell脚本,而不是在子shell当中,是吗?
查看完整描述

2 回答

?
皈依舞

TA贡献1851条经验 获得超3个赞

首先,export是POSIX兼容shell的语法的一部分,而和Linux没有必然的关系。它不是命令,而是一种修饰符(和bash/zsh中的integer,local之类的声明类似)。
其次,export的意义。exportvar表示,变量var作为环境变量,将会被该shell的子进程继承。默认情况下POSIX兼容shell里的变量都只是shell自己用的,不是环境变量,也不会被子进程继承。exportvar=xxx是bash等支持的简写语法。var=xxxcmd是只为单条命令设置var环境变量用的语法。
最后,关于PATH环境变量。它是一个环境变量,意味着它已经被exported了。PATH、HOME这些本身就是环境变量的变量,不需要显式地export的。所以没有区别。
关于source或者.,是的。它表示从指定文件(路径会使用PATH变量搜索,与可执行文件一样)中读取并执行脚本,和你手动在shell提示符后输入那些内容差不多。source这个术语也不仅仅用于shell中。
                            
查看完整回答
反对 回复 2019-04-09
?
天涯尽头无女友

TA贡献1831条经验 获得超9个赞

在/etc/profile中有PATH变量,PATH=$PATH:/usr/local/php-5.5/bin与exportPATH=$PATH:/usr/local/php-5.5/bin有什么区别?
我认为没什么区别,其实你的/etc/profile会在系统启动的时候会执行source/etc/profile,只不过不是你自己运行而已。
                            
查看完整回答
反对 回复 2019-04-09
  • 2 回答
  • 0 关注
  • 1822 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信