bash XXX.sh文件和直接运行XXX.sh的区别

区别:

  1. bash XXX.sh
    1. 明确说明使用bash作为脚本的解释器
    2. 不需要文件有执行权限
  2. XXX.sh
    1. 需要指定相关解释器。如果第一行是#!/bin/bash则使用bash,如果是#!/bin/sh,则使用sh作为解释器
    2. 需要有执行权限:通过chmod +x 文件名指定

注意:

  1. #!是特殊标记,说明该文件为可执行脚本。sh文件中除了第一行,其他#开头均为注释
  2. sh为早期shell,1978年完成;bash为Unix shell,1987年完成,兼容sh语法
相关推荐
晚风予卿云月17 小时前
【C++高并发内存池】 2.ThreadCache设计
开发语言·c++·高并发内存池·tcmalloc
Dovis(誓平步青云)18 小时前
拖动关键帧角色就抽动,动画编辑器怎样补齐中间状态
开发语言·前端·javascript·机器学习·编辑器
行走的陀螺仪18 小时前
Claude Code 从入门到实战(二):Bash工具、Plan模式与后台任务
开发语言·bash
努力努力再努力wz18 小时前
【Lua 入门系列】从执行模型到事件驱动:一文理解 Lua 有栈协程、挂起恢复与协作式调度
开发语言·lua
椒颜皮皮虾྅18 小时前
一套 C# 接口,解锁四类视觉任务:DeploySharp 分类、分割、关键点与旋转框实战
开发语言·分类·c#
2603_9658966219 小时前
JavaScript 原型与原型链
开发语言·前端·javascript
朋友圈自动点赞工具19 小时前
Ruby方法查找:对象不存方法
开发语言·前端·ruby·科技资讯
D e re k ZH19 小时前
C++ 模板与泛型编程进阶(No 2)
开发语言·c++
一级新生19 小时前
LLM _ Agent _ Skill _ 专家 的关系与选型笔记
java·开发语言·人工智能·笔记·大模型·智能体·skill
starzy199019 小时前
Scala String操作:从插值器到正则的完整指南
开发语言·后端·scala