SHEBANG #! / Bin / sh

James Harrison z Unsplash

Każdy programista może napotkać skrypt podobny do następującego:

#!/usr/bin/python3
print("Hello world!")

W tym artykule omówiono wszystkie niejasne pytania, które pojawiają się, gdy ktoś po raz pierwszy widzi shebang.

Do czego służy shebang?

Po shebangu zwykle jest ścieżka do interpretera bieżącego skryptu. Ścieżka za shebangiem pokazuje systemowi, jaki typ skryptu chcemy wykonać. Wyobraźmy sobie, że mamy plik o nazwie „hello.sh” z zawartością:

#!/bin/sh
echo "Hello!"

echo "Hello!"

Nic. Skrypt będzie nadal wykonywany jak powyżej, ponieważ w scenariuszach takich jak ten, skrypt powłoki, domyślnym wyborem systemu jest.

A co jeśli zamiast tego chcemy napisać skrypt w Pythonie?

#!/usr/bin/python3
print("Hello Python3!")

Jeśli żaden z tych dwóch czynników nie ma zastosowania i nie wykonujemy go poleceniem python, otrzymujemy błąd składniowy. System chce wykonać nasz skrypt Pythona jako skrypt powłoki, co nie działa.

Jeśli polecenie „python” wykonuje skrypt, jest jasne, że zadziała, ale może nie być od razu jasne dla zewnętrznej przeglądarki. Może to być skrypt w Pythonie, ale wtedy po prostu wypróbowanie „./script_name” w powłoce powinno zadziałać, jeśli nie masz pewności. W tym miejscu pojawia się shebang. Jeśli deweloper go dostarczył, skrypt będzie działał bez żadnych problemów. W przeciwnym razie widz musi spojrzeć na skrypt i zrozumieć, co on robi.

Wniosek

Uderzenie nie jest konieczne, ale zawsze powinno mieć miejsce w dobrze napisanych skryptach. Gwarantuje, że system wykona go poprawnie, nawet bez rozszerzenia pliku.

Suggested posts

Wyszukiwanie informacji o nazwach domen

Fragment książki Small, Sharp Software Tools autorstwa Briana P. Hogana

Wyszukiwanie informacji o nazwach domen

Kiedy wysyłasz żądanie do facebook.com, Twój komputer wyszukuje nazwę domeny, aby przetłumaczyć tę nazwę domeny na adres IP, aby komputer mógł nawiązać to połączenie.

Podróż pisarza skryptów (programista narzędzi)

Podróż pisarza skryptów (programista narzędzi)

Zacznij rozwijać własne narzędzie. Witam was ponownie na moim medium.

Related posts

Niebezpieczne rozmowy

Niebezpieczne rozmowy

Jeśli chcemy dalej prosperować na tej planecie, będziemy musieli prowadzić niebezpieczne rozmowy. Takie, które rzucają wyzwanie temu, co zrobiliśmy, co robimy i co obecnie zamierzamy robić (lub planujemy robić).

Finansowanie usuwania dwutlenku węgla w RO24

Podział wniosków o środki Carbon180 na różne ścieżki

Finansowanie usuwania dwutlenku węgla w RO24

Autor: Alyson Lee, doradca zarządzający ds. spraw rządowych Coroczny proces przyznawania środków przez rząd federalny ma kluczowe znaczenie dla naszych wysiłków na rzecz sfinansowania usuwania dwutlenku węgla (CDR). Każdego roku Carbon180 przesyła prośby do różnych biur kongresowych, aby pomóc wskazać, gdzie będą płynąć dolary w przyszłym roku.

Czy sztuka jest kiedykolwiek apolityczna?

Czy sztuka jest kiedykolwiek apolityczna?

Wczoraj zamknęliśmy drzwi tegorocznego Konkursu Piosenki Eurowizji błyskotliwym, chaotycznym wielkim finałem, w którym szwedzka piosenkarka Loreen zabrała do domu trofeum, stając się pierwszą kobietą, która wygrała dwa razy i przywracając koronę Szwecji 50 lat po tym, jak ABBA wygrała konkurs z „Waterloo”. Stali się jednym z największych zespołów w kanonie muzyki pop.

Koniec z hasłami — w jaki sposób klucze dostępu zastąpią Twoje hasło

Koniec z hasłami — w jaki sposób klucze dostępu zastąpią Twoje hasło

Aby uniknąć niejasności, zostaną użyte następujące terminy; uwierzytelniający; Telefon komórkowy używany do tworzenia Witryny logowania; Witryna internetowa lub aplikacja, z której korzysta użytkownik, aby dokonać żądania logowania do Usługi; Sprzedawca świadczący daną usługę np