close

Unix-shell

Gå til navigation Gå til søg
Image
Skærmen under en session viser Bash , taget på Gentoo Linux .

En Unix - skal er det udtryk, der bruges i computere for at henvise til kommandofortolkeren af ​​Unix -baserede og lignende operativsystemer , såsom GNU/Linux , og som er deres traditionelle brugergrænseflade . Ved hjælp af instruktionerne fra tolken kan brugeren kommunikere med kernen og i forlængelse heraf udføre de nævnte ordrer, samt værktøjer , der giver ham mulighed for at styre driften af ​​computeren. Af denne grund hed det på engelsk sådan, shell , som kan oversættes til "shell", fordi det er computersystemets synlige skal.

Kommandoerne fra tolkene kan bruges som et script, hvis de er skrevet i eksekverbare filer kaldet shell-scripts, på denne måde, når brugeren skal bruge flere kommandoer eller kommandoer kombineret med værktøjer, skriv i en tekstfil , markeret som eksekverbare, de operationer, som tolken senere, linje for linje, vil oversætte til kernen, så den kan udføre dem. Uden at være et shell-script udelukkende et programmeringssprog, kaldes processen med at skabe shell-scripts shell-programmering eller på engelsk shell-programmering eller shell-scripting .

I den mest generiske betydning af udtrykket betyder shell enhver fortolker, som brugere bruger til at skrive kommandoer. Dens etymologi kommer fra den naturlige brug af konsoller i computere, der tidligere kørte under Unix, når brugere tilsluttede sig den centrale computer, gjorde de det gennem konsoller (skaller), hvorved de gennem en tolk loggede ind og styrede hovedcomputeren. Senere, med udbredelsen af ​​personlige computere og deres enkeltbrugerfilosofi, én computer pr. bruger (forstået som det modsatte af Unix's oprindelige filosofi, én computer, mange brugere forbundet med terminaler), blev der udviklet software, der emulerede de vigtigste egenskaber ved fysiske konsoller, så de stadig kunne bruges som klienter på en computer eller kerne, der forstod standardkonventionen, der blev brugt til at konfigurere og udføre nødhåndteringsopgaver med Unix-baserede servere.

Unix og lignende brugere kan vælge mellem forskellige skaller (program der skal køres når de logger på, se bash , ash , csh , Zsh , ksh , tcsh ). Grafiske brugergrænseflader til Unix, såsom GNOME , KDE og Xfce , kan kaldes visuelle skaller eller grafiske skaller . I sig selv er udtrykket shell normalt forbundet med kommandolinjen. På Unix kan ethvert program være en brugerskal. Brugere, der ønsker at bruge en anden syntaks til at komponere kommandoer, kan angive en anden fortolker som deres brugerskal.

Udtrykket shell refererer også til et bestemt program, såsom Bourne shell , sh . Bourne-skallen var skallen, der blev brugt i tidlige versioner af Unix og blev en de facto standard ; alle Unix-lignende systemer har mindst én skal, der er kompatibel med Bourne-skallen. Bourne shell-programmet er placeret i Unix-filhierarkiet på /bin/sh . På nogle systemer, såsom BSD , er /bin/sh en Bourne shell eller tilsvarende, men på andre systemer, såsom mange Linux-distributioner , er /bin/sh et symbolsk link til en shell, der understøtter flere funktioner (såsom Bash ). POSIX angiver sin standardskal som en streng delmængde af Korn-skallen .

Skalkategorier

POSIX Shell Command Language.pdf

De kan opdeles i fire kategorier: Bourne-type, C-konsoltype, ikke-traditionel og historisk.

Bourne shell kompatibel

Kompatibel med C-skallen

Andet eller eksotisk

  • fish , en venlig og interaktiv skal, udgivet første gang i 2005.
  • mudsh , en smart shell i spilstil, der fungerer som en MUD .
  • zoidberg, en modulær skal skrevet i Perl, konfigureret og drevet udelukkende i Perl .
  • rc , standardskallen til Plan 9 fra Bell Labs og version 10 af Unix skrevet af Tom Duff . Der er lavet porte til Inferno og til Unix-baserede operativsystemer.
  • er shell (s), en RC-kompatibel shell skrevet i midten af ​​90'erne.
  • scsh (Scheme Shell)

Konfigurationsfiler til skaller

En shell læser konfigurationsfiler under flere omstændigheder under forskellige shell-afhængigheder. Denne tabel viser konfigurationsfilerne for de mest populære skaller:

sh ksh csh tcsh bash zsh
/etc/.login Ingen Ingen Log på Log på Ingen Ingen
/etc/csh.cshrc Ingen Ingen Ingen Ja Ingen Ingen
/etc/csh.login Ingen Ingen Ingen Log på Ingen Ja
~/.tcshrc Ingen Ingen Ingen Ja Ingen Ingen
~/.cshrc Ingen Ingen Ja Ja Ingen Ingen
~/.login Ingen Ingen Log på Log på Ingen Ingen
~/.logout Ingen Ingen Log på Log på Ingen Ingen
/etc/profile Log på Log på Ingen Ingen i.login Ingen
~/.profile Log på Log på Ingen Ingen Log på Ingen
~/.bash_profile Log på Ingen Ingen Ingen Log på Ingen
~/.bash_login Ingen Ingen Ingen Ingen Log på Ingen
~/.bashrc Ingen Ingen Ingen Ingen Log på Ingen
/etc/zshenv Ingen Ingen Ingen Ingen Ingen Ja
/etc/zprofile Ingen Ingen Ingen Ingen Ingen Log på
/etc/zshrc Ingen Ingen Ingen Ingen Ingen int.
/etc/zlogin Ingen Ingen Ingen Ingen Ingen Log på
/etc/zlogout Ingen Ingen Ingen Ingen Ingen Log på
~/.zshenv Ingen Ingen Ingen Ingen Ingen Ja
~/.zprofile Ingen Ingen Ingen Ingen Ingen Log på
~/.zshrc Ingen Ingen Ingen Ingen Ingen int.
~/.zlogin Ingen Ingen Ingen Ingen Ingen Log på
~/.zlogout Ingen Ingen Ingen Ingen Ingen Log på

Forklaring:

  • "nej" betyder, at skallen slet ikke vil læse filen.
  • "ja" betyder, at filen altid læses af skallen.
  • "login" betyder, at filen læses, hvis skallen er en logningsshell.
  • "n/login" betyder, at filen læses, hvis skallen ikke er en sessionsshell.
  • "int." betyder, at en fil læses, hvis det er en interaktiv skal.
  • "i.login" betyder, at en fil læses, hvis skallen er en interaktiv session.

Historisk

  • Thompson shell (sh) - Den første Unix shell blev skrevet af Ken Thompson på Bell Labs . Distribueret med Unix version 1 til 6, fra 1971 til 1975. Det anses for meget rudimentært efter moderne standarder og bruges ikke på nuværende systemer. Der er nogle dele af det tilgængelige: Ancient UNIX Systems .
  • PWB shell eller Mashey shell (sh) – En version af Thompson shell, skabt af John Mashey og andre, mens de var på Bell Labs . Distribueret med Programmer's Workbench UNIX , i 1976.

Ikke-Unix-skaller

Inden for Microsoft Windows -pakken af ​​operativsystemer er det analoge programmerne command.com eller cmd.exe til Windows NT -baserede operativsystemer og Windows PowerShell introduceret med Windows Server 2008 .

Se også

Bibliografi

  • Ellie Quigley (2001). "Introduktion til UNIX-skaller". Unix-skaller ved eksempel . Prentice Hall PTR. ISBN  0-13-066538-X .  - Historien om forskellige skaller, anvendelser og ansvar for en skal i Unix.

Eksterne links