bash sh 和 ./ 的区别

bash:

**这是Bash shell的解释器。**当你使用bash script.sh运行脚本时,你是在告诉系统使用Bash解释器来执行脚本。这意味着脚本中的所有Bash特性都可以使用。

sh:

**这是Bourne shell的解释器。**当你使用sh script.sh运行脚本时,你是在告诉系统使用Bourne shell解释器来执行脚本。这可能会导致一些在Bash中可用但在Bourne shell中不可用的特性无法使用。

./:

这是在当前目录下运行脚本的方法。当你使用./script.sh运行脚本时,你是在告诉系统在当前目录下查找并执行脚本。**这种方法需要脚本具有执行权限,**并且会使用脚本文件头部的shebang(#!)指定的解释器来执行脚本。如果没有指定解释器,将使用默认的shell解释器。

相关推荐
lucky-billy5 分钟前
Ubuntu 下一键部署 ROS2
linux·ubuntu·ros2
Thera77710 分钟前
【Linux C++】彻底解决僵尸进程:waitpid(WNOHANG) 与 SA_NOCLDWAIT
linux·服务器·c++
阿梦Anmory15 分钟前
Ubuntu配置代理最详细教程
linux·运维·ubuntu
呉師傅28 分钟前
【使用技巧】Adobe Photoshop 2024调整缩放与布局125%后出现点菜单项漂移问题的简单处理
运维·服务器·windows·adobe·电脑·photoshop
云姜.29 分钟前
线程和进程的关系
java·linux·jvm
小Tomkk1 小时前
数据库 变更和版本控制管理工具 --Bytebase 安装部署(linux 安装篇)
linux·运维·数据库·ci/cd·bytebase
赌博羊1 小时前
ImportError: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32‘ not found
linux·运维·gnu
木卫二号Coding1 小时前
第七十九篇-E5-2680V4+V100-32G+llama-cpp编译运行+Qwen3-Next-80B
linux·llama
getapi1 小时前
Ubuntu 22.04 服务器的系统架构是否为 amd64 x86_64
linux·服务器·ubuntu
消失的旧时光-19431 小时前
Linux 入门核心命令清单(工程版)
linux·运维·服务器