Hvordan kan jeg kontrollere, hvilken shell jeg bruger?

Jeg har læst, at terminal ikke er andet end shell, og Unix tilbyder forskellige varianter af shells:

  • Bourne shell (sh)
  • C shell (csh)
  • TC shell (tcsh)
  • Korn shell (ksh)
  • Bourne Again shell (bash)

Spørgsmål:

  • Når jeg åbner et terminalvindue, hvilken shell åbnes så som standard?
  • Hvordan kan jeg kontrollere, hvor mange shells der er installeret?
  • Hvordan ændrer jeg den shell, der bruges fra min konto?
Løsning

Du kan skrive følgende kommando i din terminal for at se, hvilken shell du bruger:

echo $0

Resultatet vil se nogenlunde ud som nedenfor, hvis du bruger terminalen bash (Bourne Again Shell):

-bash
Kommentarer (10)

For at finde den shell, du har i standardmiljøet, kan du kontrollere værdien af miljøvariablen SHELL:

echo $SHELL

For at finde den aktuelle shell-instans skal du lede efter den proces (shell), der har PID'et for den aktuelle shell-instans.

Sådan finder du PID'et for den aktuelle instans af shell:

echo "$$"

Nu skal vi finde den proces, der har PID'et:

ps -p 

Sæt det sammen:

ps -p "$$"
Kommentarer (7)

For at finde ud af, hvilken shell der er standardskal for din bruger, kan du køre:

echo "$SHELL"

Hvis du f.eks. bruger Bash, bør du få følgende output:

/bin/bash

Hvis du ikke har ændret nogen konfiguration, bør det være Bash, da Bash er standard-shell på Ubuntu.

Kommentarer (7)