2012年08月29日--Linux学习

shell从入门到精通(2)source命令详解以及shell几种运行方式区别 source命令也称为“点命令”,也就是可以用一个点符号(.)替代,它是bash的内部命令。功能:使Shell读入指定的Shell脚本文件并依次执行文件中的所有语句。source命令通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录。用法: source filename 或 . filenamesource filename 与 sh filename 及./filename执行脚本的区别在那里呢?1.当shell脚本具有可执行权限时,用sh filename与./filename执行 阅读详情
    1、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 Shell source 命令全解析:基础、进阶、高级用法与历史背景(完整版) 语法形式等价写法适用 Shell核心特性在当前 Shell 进程中执行文件,变量/函数/配置直接融入当前环境source 相对路径文件. 相对路径文件依赖当前工作目录,建议优先用绝对路径source -. -Bash(4.4+)读取标准输入(/dev/stdin)的内容并执行(替代关键区别直接执行脚本(./file.sh):启动子 Shell,脚本内的环境仅在子 Shell 生效,执行后销毁;source。 阅读详情

相关推荐

详解shell中source、sh、bash、./执行脚本的区别

主要介绍了shell中source、sh、bash、./执行脚本的区别,需要的朋友可以参考下

source filename 与 sh filename 及./filename执行脚本的区别

source filename 与 sh filename 及./filename执行脚本的区别在那里呢? 1.当shell脚本具有可执行权限时,用sh filename与./filename执行脚本是没有区别得。./filename是因为当前目录没有在PATH中,所有"."是用来表示当前目录的。 2.sh filename 重新建立一个子shell,在子shell中执行脚本里面的语句,该子s

997

串口接收完整一帧数据包的3种方法

本文介绍3种使用串口接受一帧完整数据包的方法,串口接收数据是字节接收的,串口每接收1字节数据,产生一个串口中断,我们在中断中将接收到的数据存放到buf中进行保存,但是数据的发送和接收都是按照帧为单位进行传输的,因此我们要在接收数据的同时判断当前接收的数据是否是完整的一帧。 一般串口完整数据帧的定义:帧头(2字节,例如AA、BB) + 数据长度(2字节) + 数据+ CRC16校验(2字节) + 帧尾(2字节) 帧头、帧尾表示一帧数据的开始和结尾,数据长度表示当前数据帧中负载数据大小,CRC16校...

爱吃鱼的猫 6万+

【Linux】详解shell中source、sh、bash、./执行脚本的区别

source命令用法

houxiaoni01的博客 3万+

【5G核心网】Packet Forwarding Model 数据包转发模型

CP 通过建立,修改,删除 PFCP 会话上下文,以及通过为每个 PFCP 会话赏析哪问提供 PDR FAR QER URR BAR,来控制 UP 面的数据包处理。 每一个 PDR 都包含 PDI(Packet Detection Information,包探测信息),一个或多个字段,与输入数据包进行匹配,并可能与以下规则相关联,从而提供了适用于与 PDI 匹配的数据包的指令集: - One FAR(包含了处理数据包的相关指令) an Apply Act...

zhonglinzhang 1万+

ROS2 Nav2实战:解决rviz2显示no map received的3种实用方法(附详细步骤)

本文针对ROS2 Nav2导航栈中rviz2显示“no map received”的常见问题,提供了三种核心解决方案。深入剖析了问题根源在于ROS2生命周期节点管理、QoS策略不匹配及坐标系设置错误,并分别通过手动配置流程、集成生命周期管理器以及调优QoS策略与固化rviz2配置,给出了详细的实战步骤,确保地图数据可靠显示。

j0k1l2m3n的博客 422

2012年8月 至 2014年2月1日读书列表

2012年8月至今读书列表: 推荐指数:[0,5] 一. 技术类书籍 技术类书籍尽可能阅读英文原版,近期阅读书目:  Core Python Programming, 中文版《Python核心编程》 推荐指数:4.5   Python.Cookbook.First Edition  推荐指数:4.0 Python.Cookbook.Second Editi

初心 1978

磁悬浮轴承控制策略设计及性能对比

摘要:针对高速磁悬浮转子控制问题,本文提出多方案对比分析。建立含陀螺效应的5自由度动力学模型,分析陀螺耦合、质量不平衡等关键挑战。对比四种控制策略:基础PID解耦、交叉反馈+自适应陷波、H∞鲁棒+前馈补偿、滑模控制+观测器,从实时性、鲁棒性等维度评估优劣。推荐采用交叉反馈+H∞+自适应陷波的混合方案,通过内环电流环与外环位置环协同,实现陀螺效应动态解耦和扰动抑制。实施步骤包括系统辨识、控制器设计、硬件部署等,需配合实验验证与参数整定。该方案综合性能最优,适用于高转速、强扰动场景。

技术工作者 1775

ITeye 2012年8月最后一周重要新闻回顾

关注技术趋势,点评IT热点,ITeye资讯频道,助您把握IT技术的脉搏!每周一我们会为您带来上周重要新闻总结,如果您对ITeye的新闻总结有任何的意见或建议,请留言给我们或邮件联系:webmaster(at)iteye.com。 2012年8月最后一周值得关注的重要新闻如下。 一、Java & 安全 上周,Java中的两个漏洞掀起了轩然大波,攻击者可以利用这两个漏洞来...

web开发 135

自研半导体Fab缺陷分析系统:从Klarf解析到Defect Map可视化的实战替代方案

本文分享了自研半导体Fab缺陷分析系统的实战经验,重点解析了Klarf文件格式与坐标系转换的核心技术,并详细介绍了从数据解析到Defect Map可视化的完整实现路径。该系统旨在为成本敏感或追求技术自主的团队提供一套功能完备的Klarity Defect平替方案,有效降低对昂贵商业软件的依赖,实现缺陷数据的自主分析与可视化。

y7z8a的博客 710

由异常的测试眼图引发的深入思考

信号测试中出现“双眼皮”的眼图测试效果,可能的导致因素总结如下:PCB通道阻抗设计不匹配,负载端出现严重反射;发射端采用了不当的信号预处理;接收器均衡处理不当;通道串扰严重... 基于以上的假设,本文就逐一分析下这些因素到底是如何对正常的信号眼图造成影响的。

一只豌豆象的博客 3064

Linux查看日历

date 2012年 09月 24日 星期一 11:47:01 CST cal 九月 2012       日 一 二 三 四 五 六                    1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 c

Ryan的砖篮 2036

FPGA+CUYSB3014实现USB3.0功能

CYUSB3014是赛普拉斯在近几年推出的新一代USB3.0的外设控制器,可以解决USB2.0带宽限制,或者单独开发USB协议和驱动的难题。赛普拉斯将CYUSB3014简称为EZ-USB FX3,具有高度的灵活特性,开发人员只需要下载FX3的固件库,就能使用USB3.0的功能。目前在一些电子产品中,使用主控器加PHY芯片最流行的方式是用FPGA+FX3这种搭配来实现USB3.0接口。......

D_Katter的博客 7066

Linux发展历史年表

我们周围到处都有Linux的身影,在家中、公司里、大学、实验室,太空空间站。但是过去它不像现在一样是计算机发展的中坚力量,它只是开始于一个芬兰大学生的个人爱好。现在的Linux已经从一个个人爱好发展成了一场计算机革命。在这篇文章里,我们向你展示最完整的Linux 23年来发展的历史年表。   1991 8月25号 : 21岁的芬兰学生Linus Benedict Torvalds 在com...

petpig0312的博客 404

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

linux14.04显卡驱动,Linux Display Driver Archive

版本: 390.143作業系統: Linux 32-bit發佈日期: April 19, 2021版本: 390.141作業系統: Linux 32-bit發佈日期: January 7, 2021版本: 390.138作業系統: Linux 32-bit發佈日期: June 24, 2020版本: 340.108作業系統: Linux 32-bit發佈日期: December 23, 2019版...

weixin_33188789的博客 203

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

linux查看用户登录情况

主要通过who /var/log/wtmp命令进行   [root@prdci log]# who /var/log/wtmp root     pts/1        2012-08-24 09:19 (10.86.1.223) root     pts/1        2012-08-24 09:38 (10.86.86.101) root     pts/2       

minwang593的专栏 926

Linux发展历史大事编年表(截止2013年)

这篇文章主要介绍了Linux发展历史大事编年表(截止2013年),Linux现在已经无处不在,是一个伟大的开原项目,让我一起来看看23年来它的发展历程吧 我们周围到处都有Linux的身影,在家中、公司里、大学、实验室,太空空间站。但是过去它不像现在一样是计算机发展的中坚力量,它只是开始于一个 芬兰大学生的个人爱好。现在的Linux已经从一个个人爱好发展成了一场计算机...

weixin_30537391的博客 135

Android和Linux kernel版本对应表

Android和Linux kernel发展史(BY 夕つ云 整理) 英文名 中文名 Android系统版本 发布时间 Linux kernel内核版本 备注 Astro 铁臂阿童木 Android  beta 2007年11月5日 未知 它作为一个面向开发者的软件开发包(SDK)进行发布。 Wind Up Robots 发条机器人 1.0

lxl584685501的专栏 2万+

鸟哥私房菜笔记01-Linux是什么与如何学习

GPL(GNU General Public License,GNU通用公共许可证)由斯托曼于1989年起草,是自由软件运动的核心法律工具。它的核心理念叫**“Copyleft”(著佐权)——与传统的"Copyright(版权)"相反,Copyleft 不是限制你使用软件,而是保证你和所有后续用户都拥有使用、修改、分发软件的自由**。版本发布时间主要应用GPLv11989年早期GNU软件GPLv21991年6月Linux内核GPLv32007年6月29日。

Virtue_Wei的博客 229

Android API版本对应Android系统版本及内核版本和代号

Android简介: Android 移动操作系统 的版本历史 始于2007年11月5日公开发布的Android Beta。第一个商业版本Android 1.0于2008年9月23日发布。Android由Google和Open Handset不断开发Alliance(OHA),并且自初始版本以来已经对其基本操作系统进行了多次更新。 正文: Api Level 系统版本 代号 ...

ezconn的博客 8126

Android和Linux kernel发展史

Android和Linux kernel发展史 英文名 中文名 Android系统版本 发布时间 Linux kernel内核版本 备注 Astro 铁臂阿童木 Android  beta 2007年11月5日 未知 它作为一个面向开发者的软件开发包(SDK)进行发布。 Wind Up Robots 发条机器人 1.0 2008年9月2

zaizaishan的专栏 1797

Linux 23年来的发展历史

Linux已经23岁了,过去它不像现在一样是计算机发展的中坚力量,它只是开始于一个芬兰大学生的个人爱好,现在的Linux已经从一个个人爱好发展成了一场计算机革命。在这篇文章里,我们向你展示最完整的Linux 23年来发展的历史年表。 Linux已经23岁了,过去它不像现在一样是计算机发展的中...

chuanzou4767的博客 200

【历史回顾】Linux发展一览

我们周围到处都有Linux的身影,在家中、公司里、大学、实验室,太空空间站。现在的Linux已经从一个个人爱好发展成了一场计算机革命。在这篇文章里,我们向你展示最完整的Linux 23年来发展的历史年表。 我们周围到处都有Linux的身影,在家中、公司里、大学、实验室,太空空间站。但是过去它不像现在一样是计算机发展的中坚力量,它只是开始于一个芬兰大学生的个人爱好。现在的Linux已经从一个个人爱

szu030606的专栏 1024
上一篇: 2012年08月28日--编码规范
下一篇: 2012年08月29日--如何在JSP页面中提高响应速度
Javamickey
博客等级 码龄17年 3粉丝 18原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值