shell脚本中的开头#!/bin/bash #!/bin/sh是什么含义

您所在的位置:网站首页 微信名A开头什么意思是最重要的 shell脚本中的开头#!/bin/bash #!/bin/sh是什么含义

shell脚本中的开头#!/bin/bash #!/bin/sh是什么含义

2024-07-04 16:08| 来源: 网络整理| 查看: 265

标准的shell脚本文件中,其第一行通常是:#!/bin/bash 或 #!/bin/sh ,以经典的HelloWorld为例,shell脚本如下:

#!/bin/bash echo "Hello World!"

那么#!/bin/bash到底是什么含义?

问答这个问题之前,我们先了解下shell版本进化历史,具体可以参考:Linux Shell进化简史

了解完shell版本进化后,我们开始深究#!/bin/bash到底是什么含义:

1、shell脚本是解释性语言

shell脚本需要专门的解析器来解析然后执行,不同的脚本语言需要匹配对应的解析器才能解析执行。#!/bin/bash 表示用/bin/bash解释脚本并执行,#!/bin/sh表示用/bin/sh解释脚本并执行。再比如python也是解释性编程语言,可以作为脚本编程语言,格式如下:

#!/usr/bin/python2.7 print("Hello World!")

常见的shell解释器有:

Bourne Shell(/usr/bin/sh或/bin/sh)Bourne Again Shell(/bin/bash)C Shell(/usr/bin/csh)K Shell(/usr/bin/ksh)Shell for Root(/sbin/sh)…

linux默认一般都是/bin/bash,这也是我们看到大部分shell脚本其第一行都是#!/bin/bash的原因。

2、shell脚本并非所有#都表示注释

#!/bin/bash 是唯一#开头但是不表示注释。

3、#!/bin/bash只能在脚本文件第一行才有效


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3