Shell Scripting - Introduction & Shebang
Obsah:
- Směrnice pro tlumočníky Shebang
- Použití Shebangu v Bash skriptech
- Příklad skriptu
- Převažující Shebang
- Závěr
Tato posloupnost znaků (
#!
) Se nazývá shebang a používá se ke sdělení operačnímu systému, který interpret má použít k analýze zbytku souboru.
Směrnice pro tlumočníky Shebang
Směrnice pro tlumočníky Shebang má následující podobu:
#!interpreter
- Směrnice musí být prvním řádkem skriptu. Směrnice musí začínat řetězcem shebang
#!
Prázdné místo za znaky shebangu je volitelné. Interpreter je úplná cesta k binárnímu souboru (např.:/bin/sh
,/bin/bash
). Argumenty interpreteru jsou volitelné.
Příklady:
-
#!/bin/bash
- K analýze souboru použijebash
.#!/usr/bin/env perl
- Použije příkazenv
k nalezení cesty ke spustitelnémuperl
.#!/usr/bin/python
Spustí soubor pomocípython
binárníhopython
.
Použití Shebangu v Bash skriptech
Pokud není zadán shebang a uživatel, který spouští skript Bash, používá jiný Shell, skript bude analyzován podle toho, co v tomto Shell používá výchozí interpret. Například výchozí interpret pro
bash
je
bash
a pro
zsh
je
sh
. Aby bylo zajištěno, že váš skript bude vždy interpretován pomocí Bashu, je třeba zadat spustitelnou cestu pomocí shebangu.
Existují dva způsoby použití směrnice Shebang a nastavení tlumočníka.
-
Použití absolutní cesty k bash binární:
#!/bin/bash
Pomocí obslužného programu
env
:#!/usr/bin/env bash
Výhodou použití druhého přístupu je, že bude hledat spustitelný
bash
v proměnné prostředí
$PATH
uživatele. Pokud existuje více než jedna cesta k
bash
, bude první použita skript.
Při použití první možnosti přidejte do dodávky shellu Bash volbu předanou interpretovi. Například pro spuštění skriptu v režimu ladění byste použili
#!/bin/bash -x
. Pokud používáte metodu
env
, musíte pro deklarování volby použít
set
. Chcete-li povolit režim ladění, přidejte za řádek shebang
set -x
.
Příklad skriptu
Vytvořme jednoduchý skript pomocí shebangu, který vytiskne „Hello, World“. Otevřete textový editor a vložte následující řádek:
nano hello_world
Ahoj světe
#!/bin/bash echo "Hello, World"
Aby bylo možné skript spustit, aniž byste zadali tlumočníka z příkazové řádky, musíte provést spustitelný soubor:
chmod +x hello_world
Nyní, pokud můžete spustit skript zadáním
./
následovaným názvem skriptu:
./hello_world
Převažující Shebang
Pokud chcete z nějakého důvodu přepsat sadu tlumočníků v řádku Shebang, musíte skript spustit explicitním zadáním hledaného shellu.
Například pro spuštění skriptu, který má v řádku Shebang zadán
#!/bin/sh
pomocí
bash
shellu, který byste napsali:
bash hello_world
Vezměte prosím na vědomí, že není vhodné přepisovat interpret shellu, protože to může vést k neočekávanému chování skriptu.
Závěr
Nyní byste měli dobře rozumět tomu, co je Shebang a jak jej používat ve svých Bash skriptech.
bash terminálMicrosoft Research Asia hostuje brány v 10 letech Bash

Microsoft Research Asie vzrostla z tuctu lidí v roce 1998 na více než 350 za deset let později.
Jak spustit Bash na Ubuntu v systému Windows 10

Povolení systému Windows Subsystem for Linux vám umožní spustit Bash na Ubuntu v systému Windows 10, Bash skripty , Nástroje pro příkazový řádek Linux, první nástroje pro Linux
Bash pole

Pole jsou jednou z nejpoužívanějších a základních datových struktur. V tomto článku se budeme zabývat Bash poli a vysvětlíme, jak je používat ve vašich Bash skriptech.