kommandolinjegrænseflade (CLI)

Hvad er en kommandolinjegrænseflade?

en kommandolinjegrænseflade (CLI) er en tekstbaseret brugergrænseflade (UI), der bruges til at køre programmer, administrere computerfiler og interagere med computeren. Kommandolinjegrænseflader kaldes også kommandolinjebrugergrænseflader, konsolbrugergrænseflader og karakterbrugergrænseflader. CLIs accepterer som inputkommandoer, der indtastes af tastaturet; de kommandoer, der påberåbes ved kommandoprompten, køres derefter af computeren.

i dag tilbyder de fleste leverandører den grafiske brugergrænseflade (GUI) som standard for operativsystemer som f.eks. De fleste nuværende systemer tilbyder både en kommandolinjegrænseflade og en grafisk brugergrænseflade.

MS-DOS-operativsystemet og kommandoskallen i operativsystemet er eksempler på kommandolinjegrænseflader. Derudover kan programmeringssprogsudviklingsplatforme som Python understøtte kommandolinjegrænseflader.

kommandolinjen faldt i popularitet efter introduktionen af GUI-baserede pc-operativsystemer som Microsoft-vinduer og Apples “klassiske” Mac OS i 1980 ‘ erne. kommandolinjen er fortsat et vigtigt værktøj for IT-fagfolk, programudviklere, sys-administratorer, netværksadministratorer og mange andre, der foretrækker en mere præcis og reproducerbar grænseflade frem for deres systemer.

Hvad er en skal?

i computing giver et shell-program adgang til et operativsystems komponenter. Skallen giver brugere (eller andre programmer) en måde at få “inde” i systemet til at køre programmer eller administrere konfigurationer. Skallen definerer grænsen mellem inde og ude.

følgende er de to typer operativsystemskaller:

  • CLI-baserede skaller tilbyder brugerne en kortfattet og effektiv måde at interagere med operativsystemet på uden at kræve overhead af en grafisk brugergrænseflade.
  • GUI-baserede skaller betragtes som lettere for begyndere at bruge, men de inkluderer også en CLI-baseret skal til systemadministratorer eller strømbrugere, der foretrækker at interagere ved en kommandoprompt.

Bash er den mest almindeligt anvendte kommandolinjeskal til unikke operativsystemer.

det program, der håndterer kommandolinjegrænsefladen, kaldes almindeligvis en kommandosprogstolk, en kommandoprocessor eller kommandotolk. To kendte CLI-skaller er Strømshell til vinduer og Bash til MacOS og macOS.

skaller er det yderste lag af operativsystemet og adskilles ofte fra den underliggende OS-kerne. En skal fungerer som en applikation og kan udskiftes efter behov. Et operativsystem kan have mere end en shell tilgængelig, som i de følgende eksempler:

  • Microsoft-vinduer inkluderer Kommandoprompt-appen såvel som programmet, som begge kan bruges til at interagere direkte med computeren. Delsystemet giver også en CLI adgang til det underliggende system.
  • som standard skal Bourne-Again Shell (bash) normalt leveres som standardskal. Andre skaller, herunder C shell, skal og andre, kan konfigureres som standard system shell.

da skallen kun er et lag over operativsystemet, kan brugerne udføre handlinger, der ikke er tilgængelige i andre interfacetyper, såsom at flytte filer i systemmapper og slette låste filer.

for at få den største fordel ved at bruge en CLI-skal, skal brugerne lære et scriptsprog. De fleste kommandolinjeskaller kan gemme sekvenser af kommandoer i et script eller en batchfil, som muligvis er fuldt programmerbar. Shell scripting er grundlaget for grundlæggende systemer management automatisering.

Hvordan virker CLIs?

når et computersystem kører, åbnes dets CLI på en tom skærm med en kommandoprompt, og kommandoer kan indtastes.

typer af CLI-kommandoer inkluderer følgende:

  • systemkommandoer, der er kodet som en del af operativsystemgrænsefladen;
  • eksekverbare programmer, der, når de påberåbes med succes, kører tekstbaserede eller grafiske applikationer; og
  • batchprogrammer (eller batchfiler eller shell-scripts), som er tekstfiler, der viser en række kommandoer. Når det med succes påberåbes, kører et batchprogram sine kommandoer, som kan omfatte både systemkommandoer og eksekverbare programmer.

CLI er mere end et simpelt kommando – /responssystem, da de fleste har yderligere funktioner, der gør en at foretrække frem for en anden. Nogle funktioner omfatter følgende:

  • Scripting kapacitet giver brugerne mulighed for at skrive programmer, der kan køres på systemet fra kommandolinjen.
  • Kommandorør giver brugerne mulighed for at dirigere output fra et program til at være input til et andet program (“piping” strømmen af data).
  • Systemvariabler kan indstilles på kommandolinjen eller værdierne for de viste variabler.
  • Kommandohistorikfunktioner gør det muligt for brugeren at huske tidligere udstedte kommandoer. Nogle gemmer kommandohistorik for sessionen, andre kan konfigureres til at gemme sessionshistorik i længere tid (som bash).

kommandoer og syntaks for CLIs har tendens til at være meget stabile over tid, dels for at aktivere bagudkompatibilitet for scripts.

prompter og kommandoer

afhængigt af operativsystemet og CLI kan der være hundreder eller endda tusinder af forskellige eksekverbare kommandoer tilgængelige. Sættet af kommandoer kan variere dramatisk mellem operativsystemer eller applikationer.

for eksempel definerer Microsoft hundredvis af cmdlet ‘ er som “letvægtskommandoer”, der skal bruges i Kraftshell; Kraftshellfunktioner er lister over cmdlet ‘ er, der kan køres på kommandolinjen.

nogle kommandoer kører på kommandolinjen af sig selv, såsom DIR-kommandoen:

C:\> dir

kommandoer kan også bruges med argumenter (undertiden benævnt parametre), der ændrer, hvordan kommandoen skal køres. Argumenter følger kommandoen og giver yderligere detaljer eller detaljer.

kommandoen cd “change directory” i mange CLIs bruges til at ændre den aktuelle arbejdsmappe, når den ønskede nye katalogsti er inkluderet som et argument-men i nogle tilfælde (som i MS-DOS eller vinduet Kommandoprompt) returnerer kommandoen i sig selv den aktuelle arbejdsmappe.

denne kommando nulstiller den aktuelle arbejdsmappe:

cd \documents\user\arbejder

argumenter gør det muligt for kommandolinjebrugere at få meget specifikke resultater, der undertiden ikke er tilgængelige via en grafisk grænseflade.

moderne CLIs leverer rør eller mekanismer til at tage output fra en kommando og sende den som input til en anden kommando. Den lodrette bjælke eller ” / ” – symbolet bruges ofte til dette formål.

følgende” one-liner ” bruger rør til streng sammen flere Magtskal kommandoer til at hente detaljerede netværk konfiguration oplysninger fra en Vinduer maskine:

Get-NetIPAddress | Sort InterfaceIndex | FT InterfaceIndex, InterfaceAlias, AddressFamily, IPAddress

selvom denne streng indtastes på kommandolinjen, som om den var en enkelt kommando, inkluderer den følgende på hinanden følgende kommandoer:

  • Get-NetIPAddress henter alle IP-konfigurationsoplysninger til computeren, når de indtastes uden argumenter.
  • Sorter Grænsefladeindeks accepterer output fra get-NetIPAddress cmdlet som input og sorterer det efter Grænsefladeindeksværdien, der er knyttet til hver IP-adresse, der er inkluderet i computerkonfigurationen.
  • FT Interfaceindeks, InterfaceAlias, AddressFamily, IPAddress bruger kommandoen Format-Table (FT) til at formatere det sorterede output fra den forrige kommando og viser de angivne værdier for hver IP-adresse.

bagudkompatibilitet er ofte et mål, når nye CLIs introduceres for at erstatte eksisterende CLIs, som da Microsoft erstattede MS-DOS med kommandoprompten. Selvom nogle MS-DOS-kommandoer ikke længere understøttes, vil de fleste stadig arbejde i Kraftshell som oprindeligt beregnet.

almindelige MS – DOS-kommandoer inkluderer følgende:

kommando eksempel noter
CD C:\> CD \ bruger \ programmer
C:\bruger \ programmer>
ændrer den aktuelle mappe til den angivne sti. Når den indtastes uden sti, viser den det aktuelle arbejdsmappe navn. Hvis stien er inkluderet i kommandoprompten, ændres prompten som i eksemplet (se også PROMPT nedenfor).
CHKDSK C:\> CHKDSK a: kontrollerer den angivne disk-i dette tilfælde disketten i A: – drevet-og returnerer en statusrapport, der viser diskstørrelsen, antallet af filer og mapper i brug og antallet af anvendte bytes.
KOPI C:\> kopier autoeksek.bat autoeksek.BAK Kopier angivne fil eller filer. Kan bruges til at kopiere filer til dubletter med forskellige filnavne eller til at kopiere filer til en anden mappe uden at ændre navne.
DEL C:\> del autoeksec.BAK
C:\> DEL C:\backups\*.BAK
sletter en eller flere filer. Kan bruges til at slette filer i den aktuelle arbejdsmappe eller i en anden mappe. Kan også bruges med jokertegn til at slette grupper af filer.
DIR C:\> DIR
C:\> DIR c:\backup\*.
viser alt indhold — filer og mapper — i den angivne mappe. Hvis der ikke er angivet nogen mappe, henviser den til indholdet af den aktuelle mappe. Det kan også bruges med jokertegn til kun at vise bestemte filer.
EDLIN C:\> Edlin autoeksec.bat starter edlin, en linjeditor, der kan bruges til at redigere tekstfiler. I dette eksempel bruges det til at redigere autoeksec.bat-fil.
FORMAT C:\> FORMAT a: formaterer en disk, så den kan bruges sammen med MS-DOS.
MKDIR C:\> MKDIR c:\NewDIR opretter en ny mappe i den angivne sti.
mere C:\> mere autoeksek.bat viser indholdet af en fil, en skærm ad gangen. Det bruges mest til tekstfiler.
hurtig C:\> hurtig $p $d$g
C:\UTIL Fri 11-05-2021>
ændrer standardprompten. I dette eksempel bruges parametre med kommandoen til at indstille promptvisningen som det aktuelle drev og sti, dag og dato og symbolet større end. Den resulterende prompt er vist i eksemplet.
RMDIR C:\> rmdir c:\backup fjerner en mappe.
TYPE C:\ > type autoeksek.bat viser indholdet af en tekstfil uden sideskift.

CLI versus GUI

den grafiske brugergrænseflade er den mest populære brugergrænseflade i dag. En GUI bruger vinduer, menuer og ikoner til at udføre kommandoer. Brug af en mus er den mest almindelige måde at navigere gennem en GUI på, selvom mange GUI ‘ er tillader en vis navigation og programudførelse via et tastatur.

Microsoft-ord er et eksempel på en GUI-baseret applikation. En bruger kan ændre Indstillinger for sidelayout og-typografier ved at vælge det tilsvarende ikon eller rullemenuen med en mus eller et tastatur.

en kommandolinje
et eksempel på output fra kommandolinjen

en fordel ved en GUI er, at grænsefladen visuelt kan vise tilgængelige funktioner. Men fordi den er afhængig af grafisk visning, har en GUI muligvis ikke det samme niveau af funktionalitet og granulær kontrol som en kommandolinjegrænseflade. For eksempel kan det kræve adskillige klik og bevægelse gennem flere dialogbokse i en GUI for at opnå det samme resultat som en enkelt kommandolinje.

derudover understøtter GUI ‘ er ikke let scripting eller automatisering. For almindelige opgaver skal en bruger gentage hvert klik eller navigere i hver dialog i GUI ‘ en manuelt.

systemadministratorer, der muligvis har brug for at administrere hundreder-eller hundreder af tusinder-af systemer og konfigurationer, finder en GUI langt mindre effektiv end en CLI. En simpel CLI-kommando kan nemt justere konfigurationer for en stor gruppe af systemer på en gang.

kommandoer og argumenter kan også kombineres og gemmes og derefter udføres som et script, hver gang den specifikke handling-eller omfattende sæt handlinger-kræves. CLI er det foretrukne værktøj til mange virksomhedsdækkende systemstyringsopgaver.

et eksempel på vinduerne 11 grafisk brugergrænseflade
vinduer 11 GUI: Startmenuen

CLI fordele og ulemper

følgende er fordele ved en kommandolinjegrænseflade:

  • granulær kontrol af et operativsystem eller en applikation;
  • mere effektiv styring af et stort antal systemer;
  • evne til at gemme scripts til at automatisere regelmæssige opgaver; og
  • grundlæggende kommandolinjegrænsefladekendskab kan muliggøre fejlfinding af netværksforbindelsesproblemer eller løsning af andre systemopgaver.

ulemperne ved en kommandolinjegrænseflade er følgende:

  • GUI er mere brugervenlig;
  • stejlere indlæringskurve forbundet med at huske kommandoer og kompleks syntaks/argumenter; og
  • forskellige kommandoer, der bruges i forskellige skaller.

kommandolinjen er et godt sted at blive ekspert på at bruge en computer. Når du er klar, er det også det eneste sted at lære at skrive shell scripts.

Leave a Reply