Програмиране на BASH

Shebang Bash, обяснено с примери

Shebang Bash, обяснено с примери
Bash е интерпретатор на команден език. Много операционни системи включват bash като интерпретатор на команди по подразбиране, особено повечето от системите GNU / Linux. Bash скриптове е метод за автоматизиране на набор от команди, които иначе биха се изпълнявали интерактивно една по една.

В това ръководство проверете какво е shebang bash и как да го използвате.

Shebang Bash:

В bash скриптове Shebang е начин да се декларира какъв интерпретатор ще използва операционната система, за да анализира останалата част от файла. Shebang се характеризира с набор от символи „#!”(Без кавички).

Ето бърза разбивка на директивата за тълкувател Shebang.

#! [аргументи]

Например, ако даден скрипт трябва да бъде анализиран с помощта на черупката Bash, тогава директивата на интерпретатора Shebang ще изглежда така.

#!/ bin / bash

Директивата за тълкувател Shebang има определени свойства.

  • Трябва да е първият ред на скрипта.
  • Трябва да започне с шебанг (#!).
  • Може да има или да няма празно пространство след шебанга (#!).
  • Интерпретаторът ще бъде пълният път към двоичен файл.
  • Може да има или да няма аргументи на тълкувател.

Ето кратък списък с някои от най-често срещаните указания за тълкувател на Shebang.

  • #!/ bin / bash: Скриптът ще бъде анализиран с помощта на баш.
  • #!/ usr / bin / python: Скриптът ще бъде анализиран с помощта на питон двоичен.
  • #!/ usr / bin / env perl: Скриптът ще бъде анализиран с помощта на perl изпълним. Местоположението на perl изпълнимия файл ще бъде предоставен от env команда.

Използване на Shebang Bash:

Сценариите не могат да имат Shebang bash. Всеки такъв скрипт ще бъде анализиран с помощта на интерпретатора по подразбиране. Например bash е интерпретаторът по подразбиране за bash и sh за zsh. Докато повечето системи UNIX / Linux имат по подразбиране bash, потребителите имат опции да използват други. В такъв сценарий, без деклариране на интерпретатора, скриптът може да не изпълни предпочитаната от него задача.

Има два метода за използване на директивата Shebang за деклариране на интерпретатора. Първият е да декларирате пътя на файла към изпълнимия файл.

#!/ bin / bash

Друг метод е използването на env помощна програма за намиране на изпълнимия файл.

#!/ usr / bin / env bash

Ползата от използването на помощната програма env е, че тя ще търси изпълнимия файл под променливата на средата $ PATH на текущия потребител. В този пример env ще търси bash. Ако в променливата $ PATH е деклариран повече от един bash изпълним файл, тогава ще се използва първият.

Както споменахме, Shebang bash също поддържа изпълними аргументи. Например, за да използвате bash с режим за отстраняване на грешки, директивата на интерпретатора Shebang ще изглежда така.

#!/ bin / bash -x

Що се отнася до използването env за Shebang bash добавянето на изпълним аргумент изисква използването на опцията “set”. Например следващият ще използва bash с активиран режим за отстраняване на грешки.

#!/ usr / bin / env bash
$ set -x

Пример за скрипт:

Обсъдихме основите на Shebang bash. Време е да го приложим на практика. Нека да разгледаме прилагането на Shebang bash.

Стартирайте текстовия редактор по ваш избор и въведете следния скрипт:

$ #!/ bin / sh
$ echo "hello_world_bash"

Запазете файла. За да стартирате скрипта, той трябва да бъде маркиран като изпълним файл. Изпълнете следната команда:

$ chmod + xx