shell中的source和直接执行sh的区别

首先我们知道我们执行shell有这么几种方法

1. sh/bash使用其内置的命令集来执行一些命令,例如如下

1
2
sh demo.sh
bash demo.sh

 2. 使用./或者/$SHELLPATH/*.sh的方式执行

1
2
./demo.sh
/home/vagrant/shell/test.sh

 采用上面的方法的话需要将该方法设置为有执行权限才能执行

3. 采用source shell.sh或者. shell.sh方法执行

1
2
source demo.sh
. demo.sh

 这三种方法的区别

1.文件权限:第二种执行方法需要文件有x权限才能执行,其余方法不需要

2. 变量有效期:采用第三种方法执行文件,可以使得变量的有效期增长,使得其能在该用户下变量有效

posted @   lonecloud  阅读(9177)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
我的博客即将同步至 OSCHINA 社区,这是我的 OSCHINA ID:lonecloud,邀请大家一同入驻:https://www.oschina.net/sharing-plan/apply
点击右上角即可分享
微信分享提示