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语法
相关推荐
2601_962885721 小时前
如何用 Python 自动识别股票的支撑位与压力位?
开发语言·python
爱吃奥利奥_wen1 小时前
面向对象三板斧:封装、继承、多态,到底在“装“什么、“承“什么、“变“什么?
开发语言·经验分享·c#
我可能是个假开发2 小时前
FTP Unicode 文件名导致 `550` 的问题分析与解决方案
java·开发语言·spring
WL学习笔记3 小时前
日期类(C++)
开发语言·c++·日期类实现
谢亮_vipxieliang3 小时前
Go map与结构体的正确使用
开发语言·golang·哈希算法
H.莓飛4 小时前
【C++】命名空间、缺省参数、函数重载与引用
linux·开发语言·c++·visual studio
xxwl5854 小时前
数据结构知识点和代码实现总结(C语言实现)
c语言·开发语言·数据结构
code2cat7 小时前
Java进阶篇之AtomicMarkableReference:引用还在,标记已经改变
java·开发语言·cas·并发编程·逻辑删除
CappuccinoRose7 小时前
FormData数据处理
开发语言·前端·javascript·表单数据
Zguigo7 小时前
【CUDA8】第一个CUDA C++ Kernel --vector add
java·开发语言·c++