Почти всеки Linux shell скрипт започва с ред, започващ с "#!". Това е известно като "shebang". Ето всичко, което трябва да знаете за него.

Може да сте виждали странен ред, започващ с "#!“ в началото на Linux скриптовете и се чудех какво е това. Това се нарича "линия shebang" и позволява на Linux да каже кой интерпретатор да използва. Ето как работи.

Какво представлява линията Shebang?

Една Linux система има много скриптове, които автоматизират различни домакински задачи. Потребителите и администраторите също пишат свои собствени скриптове.

Въпреки нарастването на популярните скриптови езици като Ruby или Python, дистрибуциите на Linux също обикновено са оборудвани с няколко обвивки. Bash е де факто стандарт за основните дистрибуции, но има много налични обвивки.

Има Zsh, както и C shell, Korn Shell и tcsh. И Риба. И тогава добрата стара черупка на Борн. Освен че всъщност е Bash, свързан символично към sh.

Така че не само има различни скриптови езици, има и различни обвивки. Тези обвивки имат различен синтаксис и команди един от друг. Как казвате на Linux кой интерпретатор да използва?

instagram viewer

Това прави линията shebang. Това е последователност от знаци, която стартира интерпретирани скриптове. Носи името си от два жаргонни термина за "#" и "!"знаци. Първият се нарича "хеш". Може да го познаете от термина „хаштаг“.

Знакът "!" е известен също като бретон. Комбинацията от двете е "shebang", игра на фразата "the whole shebang".

Как Linux определя кой интерпретатор да използва

Може да забележите, че "#" знакът също е коментар на много езици. Как системата избягва конфликти? Това е лесно. Повечето езикови интерпретатори просто игнорират "#" знаци, ако са на първия ред.

Вместо това ядрото ще разгледа линията shebang и ще предаде скрипта на подходящия интерпретатор.

Задаване на линията Shebang във вашите скриптове

Да кажете на ядрото кой интерпретатор да стартира във вашите скриптове е лесно. Просто сложи абсолютният път на интерпретатора, който искате да стартирате в реда shebang, последван от всякакви опции.

Например, за да стартирате Bash скрипт:

#!/bin/bash

Дайте своя сценарий изпълнете разрешения с помощта на chmod:

chmod +x скрипт.sh

Вече ще можете да стартирате вашия скрипт от командния ред.

Сега знаете за линията Shebang

Сега знаете как работи линията shebang за изпълнение на скриптове в Linux. "#!" знаците просто казват на ядрото кой интерпретатор да стартира. Този, който идва с повечето Linux системи, е Bash.

Въпреки популярността на скриптовите езици като Python, Bash остава полезен за писане на скриптове за автоматизиране на задачи за администриране на Linux. Лесно е да пишете и изпълнявате Bash скриптове на Linux.