当我修改了/etc/profile文件,我想让它立刻生效,而不用重新登录;这时就想到用 source 命令,如:source /etc/profile
对source进行了 学习 ,并且用它与sh 执行脚本进行了对比,现在总结一下。

source命令:
source命令也称为“ 点命令 ”,也就是一个点符号(.),是bash的内部命令。
功能:使 Shell 读入指定的Shell程序文件并依次执行文件中的所有语句
source命令通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录。
用法:
source filename 或 . filename
source命令(从 C Shell 而来)是bash shell的内置命令;点命令(.),就是个点符号(从Bourne Shell而来)是source的另一名称。

source filename 与 sh filename 及./filename执行脚本的区别在那里呢?
1.当shell脚本具有可执行权限时,用sh filename与./filename执行脚本是没有区别得。./filename是因为当前目录没有在PATH中,所有"."是用来表示当前目录的。
2.sh filename 重新建立一个子shell,在子shell中执行脚本里面的语句,该子shell继承父shell的环境变量,但子shell新建的、改变的变量不会被带回父shell,除非使用export。
3.source filename:这个命令其实只是简单地读取脚本里面的语句依次在当前shell里面执行,没有建立新的子shell。那么脚本里面所有新建、改变变量的语句都会保存在当前shell里面。

举例说明:
1.新建一个 test .sh脚本,内容为:A=1
2.然后使其可执行chmod +x test.sh
3.运行sh test.sh后,echo $A,显示为空,因为A=1并未传回给当前shell
4.运行./test.sh后,也是一样的效果
5.运行source test.sh 或者 . test.sh,然后echo $A,则会显示1,说明A=1的变量在当前shell中

linux 下source命令相关推荐

  1. linux source.命令,linux下source命令详解

    本文收集整理关于linux下source命令详解的相关议题,使用内容导航快速到达. 内容导航: Q1:linux下的source命令 linux下的source命令source 命令是 bash sh ...

  2. linux下source命令使用详解

    这篇文章主要为大家详细介绍了Linux Source命令及脚本的执行方式,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 Linux Source命令及脚本的执行方式解析 当我修改了/etc/pro ...

  3. Linux下source命令

    2019独角兽企业重金招聘Python工程师标准>>> source命令用法: source FileName 作用:在当前bash环境下读取并执行FileName中的命令. 注:该 ...

  4. linux source多个文件夹,linux下source命令使用详解

    source命令: source命令也称为"点命令",也就是一个点符号(.),是bash的内部命令. 功能:使Shell读入指定的Shell程序文件并依次执行文件中的所有语句 so ...

  5. linux当前时间 按格式化,Linux下date命令,格式化输出,时间设置

    date命令的帮助信息 [root@localhost source]# date --help 用法:date [选项]... [+格式] 或:date [-u|--utc|--universal] ...

  6. linux rpm 查找,Linux下 rpm 命令查询方法

    [root@wang /]# rpm -qa // 查看安装所有包 [root@wang /]# rpm -qa |grep vim // 查询所安装的包 +包名 [root@wang /]# rpm ...

  7. Linux 下 Shell 命令的分类及用法

    当你打算真正操纵好你的 Linux 系统,没有什么能比命令行界面更让你做到这一点.为了成为一个 Linux 高手,你必须能够理解 Shell命令的不同类型,并且会在终端下正确的使用它们. 在 Linu ...

  8. linux命令执行的通过程,Linux下shell命令执行过程简介

    浅析linux 下shell命令执行和守护进程 执行shell脚本有以下几种方式 1.相对路径方式,需先cd到脚本路径下 [root@banking tmp]# cd /tmp [root@banki ...

  9. linux下source filename,./filename,. filename,......

    linux下"source filename,"./filename",". filename",...... 当我修改了/etc/profile文件 ...

最新文章

  1. Vue从Hello World到打包(后端适读)
  2. C语言经典例11-斐波那契数列
  3. 2.4操作系统之死锁详解(预防、避免、检测、解除)+思维导图
  4. [转]httpclient编码
  5. 过 DNF TP 驱动保护(一)
  6. 03Prism WPF 入门实战 - Region
  7. mysql去掉小数点多余0_mysql数据库个性化需求:版本号排序
  8. linux 如何查看远程代码分支,linux看git 创建分支、删除本地分支、查看远程分支、本地分支例子...
  9. 在文本框中插入@对象
  10. Java做一个弹出表,至少有两个字段的简单的弹出窗体java表单
  11. 惯性导航算法matlab,基于MATLAB.Simulink的捷联惯性导航仿真
  12. python UI自动化测试-----常见面试题汇总
  13. 联想E43升级bios激活windows 7
  14. 手机之家签名工具_魔力签 v1.3已更新内置资源amp;越狱工具
  15. 开博尔android播放器,你看!你细看!开博尔Q50播放器本地和NAS文件管理方式详解...
  16. 亲自动手制作来自MyBatis-Spring官网的chm格式帮助文件
  17. 建立“顾客购买图书”的活动图(使用泳道)
  18. 【叮咚买菜】叮咚抢菜使用教程
  19. apache与php乱码
  20. 2022计算机软件毕业设计大全

热门文章

  1. C++小项目-吃豆子游戏
  2. Delphi 一些函数解释
  3. 你必须懂的 T4 模板:深入浅出
  4. Ubuntu 14.10 -- 异次元软件世界
  5. (诡异事件)iframe标签后面的alert不执行
  6. Object之MemberwiseClone方法
  7. java做的一个将中文转换成Unicode码的工具类【转载】做个标记,明天研究下
  8. 访问权限冲突定义_一文读懂F5 REST API的细粒度角色访问控制
  9. java list 循环赋值_Java List集合的坑(add方法报空指针,循环赋值时list已保存的值会改变)...
  10. JDBC查询Oracle全部表名称,如何使用JDBC API从Oracle数据库中的现有表中检索记录?...