Linux source命令

Linux source命令:

通常用法:source filepath 或 . filepath

功能:使当前shell读入路径为filepath的shell文件并依次执行文件中的所有语句,通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录。例如,当我们修改了/etc/profile文件,并想让它立刻生效,而不用重新登录,就可以使用source命令,如source /etc/profile。

source命令(从 C Shell 而来)是bash shell的内置命令;点命令(.),就是个点符号(从Bourne Shell而来)是source的另一名称。这从用法中也能看出来。

 

source filepath 与 sh filepath 、./filepath的区别

  1. 当shell脚本具有可执行权限时,用sh filepath与./filepath是没有区别的。./filepath是因为当前目录没有在PATH中,所有"."是用来表示当前目录的。

  2. sh filepath 会重新建立一个子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中;

转载于:https://www.cnblogs.com/pkufork/p/linux_source.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/287231.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux下覆盖文件命令,在Linux中使用命令行进行文件覆盖的操作

习惯了freebsd里的cp/rm/mv等命令遇到同名文件时直接覆盖操作,而在linux中(不一定是全部,可能是我使用的几种),使用cp/rm/mv命令覆盖文件操作时总是提示输入yes或no,很是麻烦,一两个的也就算了,没什么&…

云堆栈三大服务模式解析

如果准备使用云计算或者要在自己的IT环境中部署云计算,首先要确定合适的服务模式。这就需要我们对每种服务模式含义和特点都有所了解,很清楚从中能够获得哪些有益东西。正所谓“知己知彼百战不殆”,我们要对自己想要得到什么非常了解&#xf…

Android之浏览器作为客户端访问手机socket作为服务端下载图片和网页和APK

1 需求 在同一局域网内,手机(PC端)浏览器作为客户端,然后手机app里面通过socket写服务代码,然后浏览器访问手机服务端的网页和图片和css文件和下载APK 2 代码实现 创建服务线程代码 var serverSocket: ServerSocket? = nullvar run = trueinner class HttpServerThrea…

Excel数据生成SQL insert语句

CONCATENATE("insert into teacher(ID, NAME, ADDRESS) values (",A1,",",B1,",",C1,");")转载于:https://blog.51cto.com/kxtand/1704951

《看聊天记录都学不会Python到游戏实战?太菜了吧》(5)用前朝的剑斩今朝的官

本系列文章将会以通俗易懂的对话方式进行教学,对话中将涵盖了新手在学习中的一般问题。此系列将会持续更新,包括别的语言以及实战都将使用对话的方式进行教学,基础编程语言教学适用于零基础小白,之后实战课程也将会逐步更新。 若…

【摄影测量原理】第二章:单幅影像解析基础

本章提纲: 第一节 空中摄影基本知识第二节 中心投影与正射投影第三节 共线方程第四节 航摄像片的像点位移第五节 单幅影像解析基础第一节 空中摄影基本知识 2.1.1 航空摄影机 1. 光学航空摄影机 <

Blazor Hybrid / MAUI 简介和实战

1. BlazorBlazor 是一个使用 .NET 生成交互式客户端 Web UI 的框架&#xff1a;使用 C# 代替 JavaScript 来创建信息丰富的交互式 UI。共享使用 .NET 编写的服务器端和客户端应用逻辑。将 UI 呈现为 HTML 和 CSS&#xff0c;以支持众多浏览器&#xff0c;其中包括移动浏览器。与…

linux下ffmpeg编译成so文件,一、ffmpeg编译成android使用的so库

1.在https://ffmpeg.org/中下载ffmpeg源码(目前版本为ffmpeg-3.2.1)2.下载ndk3.分别解压ffmpeg和ndk&#xff0c; 路径如 &#xff1a;ffmpeg路径&#xff1a;/home/lx/Downloads/ffmpeg-3.2.1ndk路径&#xff1a;/home/lx/Downloads/android-ndk-r13b4.替换ffmpeg-3.2.1/confi…

SpringMVC总结帖

SpringMVC是基于MVC设计理念的一款优秀的Web框架&#xff0c;是目前最流行的MVC框架之一&#xff0c;SpringMVC通过一套注解&#xff0c;让POPJ成为处理请求的控制器&#xff0c;而无需实现任何接口&#xff0c;然后使用实现接口的控制器也完全没问题&#xff1b;支持REST风格的…

Android之RxPermissions用kotlin写没反应

1 问题 用rxPermisssons下面的写法没反应 RequiresApi(Build.VERSION_CODES.N)fun test(){val rxPermissions RxPermissions(this)rxPermissions.requestEach(Manifest.permission.CAMERA,Manifest.permission.WRITE_EXTERNAL_STORAGE).subscribe {object : Consumer<Perm…

基于.NetCore开发博客项目 StarBlog - (7) 页面开发之文章详情页面

系列文章基于.NetCore开发博客项目 StarBlog - (1) 为什么需要自己写一个博客&#xff1f;基于.NetCore开发博客项目 StarBlog - (2) 环境准备和创建项目基于.NetCore开发博客项目 StarBlog - (3) 模型设计基于.NetCore开发博客项目 StarBlog - (4) markdown博客批量导入基于.N…

关 于 解 析 php 的 问 题

在搭建discuz论坛的时候出的问题&#xff0c;上次搭建用的是2.2版本&#xff0c;这次下了个2.4版的Apache发现有好多地方不一样&#xff1b;比如在order deny allow 方面就变了Deny from all变成Require all deniedAllow from all变成Require all granted今天在配置完后开始在浏…

【摄影测量原理】第三章:双像立体测图

本章主要内容: 第一节 人眼的立体视觉和立体观测第二节 立体像对相对定向和核线几何第三节 立体像对的前方交会第四节 单元模型的绝对定向第五节 双像解析摄影测量 第一节 人眼的立体视觉和立体观测 1.1 人眼的立体视觉 人用双眼判断景物可判断其远近,得到…

linux源码编译emqttd,emqtt编译及简单测试记录

emqtt&#xff1a;在Erlang中实现的MQTT客户端库和命令行工具&#xff0c;支持MQTT v5.0 / 3.1.1 / 3.1。下载源码编译cd emqtt & make运行./rebar3 shell测试1、初始化{ok, ConnPid} emqtt:start_link([{clientid, "2020"},{keepalive, 0},{proto_ver, v5},{ho…

《看聊天记录都学不会C语言?太菜了吧》(18)2分钟搞结构体

若是大一学子或者是真心想学习刚入门的小伙伴可以私聊我&#xff0c;若你是真心学习可以送你书籍&#xff0c;指导你学习&#xff0c;给予你目标方向的学习路线&#xff0c;无套路&#xff0c;博客为证。 本系列文章将会以通俗易懂的对话方式进行教学&#xff0c;对话中将涵盖…

【摄影测量原理】第四章:解析空中三角测量

第一节 概述第二节 航带法解析空中三角测量第三节 独立模型法解析空中三角测量第四节 光束法解析空中三角测量第五节 GPS辅助空中三角测量第六节 机载POS系统对地定位 第一节 概述 空中三角测量 是立体摄影测量中,根据少量的野外控制点,在室内进…

setInterval和setTimeout的使用区别

setTimeout和setInterval的使用 这两个方法都可以用来实现在一个固定时间段之后去执行JavaScript。不过两者各有各的应用场景。 方 法 实际上&#xff0c;setTimeout和setInterval的语法相同。它们都有两个参数&#xff0c;一个是将要执行的代码字符串&#xff0c;还有一个是以…

「System Design」设计一个短链接系统

短链接系统可以把比较长的 URL 网址转换成简短的网址字符串&#xff0c;短链接的优势是方便传播。适合在一些对字符串长度有要求的场景中使用&#xff0c;比如短信&#xff0c;微博等&#xff0c;比如https://www.cnblogs.com/myshowtime/p/16227260.html转换成短链接为https:/…

Android之页面有变化用onWindowFocusChanged来监听权限是否开启

1 问题 我们需要在Activity里面监听网络变化、热点是否开启和关闭、GPS服务是否开启、位置权限是否开启等一些列行为。 2 思路 方法一: 如果是需要启动activity进行权限申请,我们可以用如下组合模式 var intent = Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS)startA…

iOS中 Animation 动画大全 韩俊强的博客

每日更新关注:http://weibo.com/hanjunqiang 新浪微博&#xff01; iOS开发者交流QQ群&#xff1a; 4463102061.iOS中我们能看到的控件都是UIView的子类,比如UIButton UILabel UITextField UIImageView等等 2.UIView能够在屏幕的显示是因为在创建它的时候内部自动添加一个CALa…