一尘不染

为什么需要在脚本文件的开头放置#!/ bin / bash?

linux

我之前已经制作过Bash脚本,它们运行良好,没有#!/bin/bash开始的情况。

放入它有什么意义?事情会有所不同吗?

另外,您如何发音#?我知道这!发音为“砰”。

怎么#!发音?


阅读 546

收藏
2020-06-02

共1个答案

一尘不染

这是一个约定,因此* nix shell知道要运行哪种解释器。

例如,ATT的较旧版本默认为 sh (Bourne shell),而BSD的较旧版本默认为 csh (C shell)。

即使在今天(大多数系统都运行bash,即 “ Bourne Again Shell”
),脚本仍可以使用bash,python,perl,ruby,PHP等。例如,您可能会看到#!/bin/perl#!/bin/perl5

PS:感叹号(!)亲切地称为 “ bang” 。shell注释符号(#)有时称为 “ hash”

PPS:请记住-在* nix下,将后缀与文件类型相关联只是一种 约定 ,而不是 “规则” 。一个 可执行文件
可以是一个二进制程序,一百万脚本类型和其他的东西,以及任何一个。因此需要#!/bin/bash

2020-06-02