Linux中常见的这个符号(#!)的名称,叫做“Shebang”或者“Sha-bang”。长期以来,shebang 都没有正式的中文名称。Linux 中国翻译组的 GOLinux 将其翻译为:释伴,即解释伴随行的简称,同时又是 shebang 的音译。

Shebang 的名字来自于 SHArp 和 bang,或 haSH bang 的缩写,用来指代 Shebang 中 #! 两个符号的典型 Unix 名称。 Unix 术语中,#号通常称为 sharp,hash 或 mesh;而!号则常常称为 bang。也有看法认为,shebang 名字中的 sh 来自于默认 shell —— Bourne shell 的名称 sh,因为常常使用 shebang 调用之。

在 2010 年版的 Advanced bash scripting guide(revision 6.2)中,shebang 被称为“sha-bang”,同时提到“也写作 she-bang 或 sh-bang”,但该文件中没有提到“shebang”这一形式。

Linux中的释伴符号(#!)的作用

#!这个符号通常在 Linux/Unix 系统的脚本中第一行开头中写到,它指明了执行这个脚本文件的解释程序。

1. 如果脚本文件中没有 #! 这一行,那么它执行时会默认用当前 Shell 去解释这个脚本(即:$SHELL 环境变量)。

2. 如果#!之后的解释程序是一个可执行文件,那么执行这个脚本时,它就会把文件名及其参数一起作为参数传给那个解释程序去执行。

3. 如果#!指定的解释程序没有可执行权限,则会报错“bad interpreter: Permission denied”。如果#!指定的解释程序不是一个可执行文件,那么指定的解释程序会被忽略,转而交给当前的 shell 去执行这个脚本。

4. 如果#!指定的解释程序不存在,那么会报错“bad interpreter: No such file or directory”。注意:#!之后的解释程序,需要写其绝对路径(如:#!/bin/bash),它是不会自动到 $PATH 中寻找解释器的。

5. 当然,如果你使用 bash test.sh 这样的命令来执行脚本,那么#!这一行将会被忽略掉,解释器当然是用命令行中显式指定的 bash。

在Windows系统中,#开头的行就被当成注释忽略了,不存在兼容性的问题。

计算机术语shebang,Linux中的释伴#!(shebang)相关推荐

  1. CAE所表示的计算机术语是,计算机应用中,英文缩略语CAE所表示的计算机术语是()。...

    _ 刚果红染色可呈红色阳性反应的疾病有(). 当管流过水断面流速按抛物线规律分布时,管中水流为紊流. 一般含硫量较低的石油多产自碳酸盐岩系和膏岩系含油层. 转移因子属于免疫()剂,适用于(). 某客户 ...

  2. 释伴:Linux 上的 Shebang 符号(#!)

      使用类Unix系统的同学可能都对"#!"这个符号并不陌生,但是你真的了解它吗? 这个符号的名称,叫做"Shebang"或者"Sha-bang&qu ...

  3. 在线计算机专业术语英译中翻译,计算机术语汉英翻译.ppt

    计算机术语汉英翻译 计算机专业英语基础知识--计算机专用术语与命令;基础篇--常用名词;基础篇--常用名词;基础篇--常用名词;基础篇--硬件篇;Keyboard 键盘.CRT Cathode Ray ...

  4. 在计算机术语中常用byte表示,2016年计算机一级MS Office上机考试题

    1.CPU中有一个程序计数器(又称指令计数器),它用于存放( ).D A)正在执行的指令的内容 B)下一条要执行的指令的内容 C)正在执行的指令的内存地址 D)下一条要执行的指令的内存地址 2.CPU ...

  5. 在计算机术语中 将ALU控制器和,计算机组成原理试题与答案

    二.填空题 1 字符信息是符号数据,属于处理(非数值)领域的问题,国际上采用的字符系统是七单位的(ASCII)码.P23 2 按IEEE754标准,一个32位浮点数由符号位S(1位).阶码E(8位). ...

  6. 计算机mips是什么,在计算机术语中,什么叫MIPS

    2006-08-18 在计算机术语中,什么叫VGA 显卡所处理的信息最终都要输出到显示器上,显卡的输出接口就是电脑与显示器之间的桥梁,它负责向显示器输出相应的图像信号.CRT显示器因为设计制造上的原因 ...

  7. 在计算机术语中 将ALU控制器和,计算机组成原理试管理-题集

    1.计算机组成原理试题集第一章计算机系统概述二.填空题1. 冯.诺伊曼机的设计思想是_ .2. 在计算机术语中,将ALU控制器和_存储器合在一起称为_ .3. 计算机系统的层次结构从下至上可分为五级, ...

  8. 在计算机术语中只读存储器常用,计算机应用基础复习题.doc

    计算机应用基础复习题.doc 计算机应用基础复习题 参考复习题1 计算机不具备下列哪种人类头脑的特性(C).A 计算B 逻辑思维C 创造性思维D 判断2我国迄今为止发现的首例既毁软件又毁硬件的恶性病毒 ...

  9. 计算机术语符号数,术语符号的表示方式及在传播中的作用

    摘要:术语符号的正确规范的使用,既有益于今后科技学术水平交流和沟通,也能促进文化和科技的相互融合及传播作用.就科技术语符号使用过程中表示的方式及在传播中的作用进行了分析. 关键词:术语符号,关联性,通 ...

最新文章

  1. Apache的工作原理
  2. ubuntu下eclipse打开window下的java文件,注释内容为乱码,解决方法
  3. POJ 1144 Network(无向图连通分量求割点)
  4. C语言数组的深入理解
  5. VMware下Windows Server 2012添加新磁盘
  6. 链表应用 多项式相加
  7. 【NGS接龙】薛宇:漫谈生物信息圈儿的那些年、那些事!
  8. java 泛型方法 泛型类
  9. IntelliJ Idea学习笔记007---IntelliJ Idea2018 1.6破解
  10. SharePoint2010 对象模型 关联列表
  11. 最大-最小 滤波器实现 及用于边缘检测
  12. 系统集成项目管理工程师(软考中级)重点知识、背诵版
  13. 关于attachEvent与addEventListener事件绑定兼容问题
  14. 简洁明了:基于eova平台,对Vue 页面中的自定义Button按钮进行用户权限控制处理
  15. 欧美古风格html网站模板
  16. 电感 电容耦合的判断
  17. linux 64位 虚拟内存空间,Linux在x86-64下的虚拟内存布局
  18. 关于不登陆微信如何傻瓜式查看记录
  19. 【备战蓝桥杯】USACo-- airpro【改变策略】
  20. C#-财务管理系统(成本核算)

热门文章

  1. JAVA中使用POI实现Excel 下载功能
  2. 编译chromium笔记
  3. 通用图片 OCR 到 Word API 数据接口
  4. Ogre 光,材质与材质脚本
  5. android string.xml中使用空格符
  6. 一文了解什么是DHCP协议
  7. ReLU是什么的简称?
  8. foxmail 无法收发gamil邮件
  9. Python+selenium+Gmail半自动登录-注销-修改密码
  10. Gradle安装教程