Python全系列 教程
3567个小节阅读:5931.9k
目录
鸿蒙应用开发
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
第一种:bash ./hello.sh
和 sh ./hello.sh
第二种:source hello.sh
和 . hello.sh
两种运行的方式差异性在于,第一种是在子bash环境下运行,而第二种是在当前bash环境下运行,我们通过运行type source
可以看到 source is a shell builtin
(source 是 shell 内嵌)
我们执行ps -f
可以查看当前bash环境,创建一个子bash,继续通过ps -f
查看,在当前子bash环境下,你依然可以运行shell文件
从结果上来看,两者好像没有什么区别,但是如果引入更多知识,例如变量:如果子shell中设置的当前变量,父shell是可不见的
变量本质上其实是在内存中开辟一个空间用来临时存储数据,例如:age = 20
全局变量和局部变量的区别
全局变量:层层嵌套的子bash依然可以访问
局部变量:只在当前的bash中可以访问,子bash和父bash都不能访问呢
xxxxxxxxxx
$HOME 、$PWD 、$SHELL 、$USER
查看当前所有的全局系统变量env
查看当前所有的变量set
(包含全局和局部的,系统的,用户的)