Dash

Från Wiki.linux.se
Hoppa till navigering Hoppa till sök

dash - Debian Almquist Shell

Kommandot `dash` är en liten och snabb POSIX-kompatibel kommandotolk som används främst på Linux-system.

Syntax

dash [ALTERNATIV]... [SCRIPT-FIL]...

Beskrivning

`dash` är en liten, snabb och POSIX-kompatibel kommandotolk. Det är en mindre version av Bourne Shell (`sh`) och används ofta för att köra skript med minimal overhead. `dash` används ofta som `/bin/sh` på Debian-baserade system för att förbättra systemets prestanda vid exekvering av skript.

Alternativ

Kommandot `dash` stöder flera alternativ som kan användas för att justera dess beteende och exekvering:

  • -c STR - Läs och kör kommandon från STR.
  • -i - Interaktivt läge.
  • -l - Kör som ett inloggningsskal.
  • -s - Läs kommandon från standardingången.
  • -v - Skriv ut varje kommando innan det exekveras.
  • -x - Skriv ut varje kommando efter att det expanderats.
  • -n - Läs endast skriptet utan att exekvera kommandona.
  • -e - Avsluta om något kommando returnerar ett icke-noll resultat.
  • -u - Behandla obekanta variabler som fel.
  • --help - Visa hjälpmeddelande och avsluta.
  • --version - Visa versionsinformation och avsluta.

Exempel

Här är några praktiska exempel som visar hur du kan använda `dash`-kommandot:

  • För att starta en interaktiv dash-session:

dash

  • För att köra ett kommando från en sträng:

dash -c "echo Hello, World!"

  • För att köra ett skript från en fil:

dash script.sh

  • För att starta en interaktiv session som inloggningsskal:

dash -l

  • För att köra ett skript i felsökningsläge:

dash -x script.sh

Skillnader mellan macOS och Linux

Det finns några viktiga skillnader att tänka på när man använder `dash` på macOS jämfört med Linux:

  • **Tillgänglighet:** `dash` är vanligtvis inte förinstallerat på macOS. På macOS kan du behöva installera det via en pakethanterare som Homebrew (`brew install dash`).
  • **Standard shell:** På många Linux-distributioner används `dash` som standard `/bin/sh` för att förbättra prestanda vid skriptexekvering. På macOS är `/bin/sh` vanligtvis länkat till `bash` eller `zsh`.
  • **Kompatibilitet:** Skript som är skrivna för `bash` kan behöva modifieras för att vara helt kompatibla med `dash` eftersom `dash` strikt följer POSIX-standarden och saknar vissa utökade funktioner som finns i `bash`.

Exempel på att installera `dash` på macOS via Homebrew:

  • För att installera och använda `dash`:

brew install dash
dash

Det är alltid bra att konsultera `man`-sidan för `dash` på din specifika plattform för att se vilka alternativ och funktioner som är tillgängliga och hur de används.

Felsökning

Om du får ett felmeddelande när du använder `dash`, kontrollera följande:

  • Att du använder rätt syntax och alternativ för ditt specifika kommando.
  • Att skriptfiler du försöker köra är läsbara och har exekveringsrättigheter.
  • Att du använder en kompatibel version av `dash` för de specifika funktioner du försöker använda.

Se även

  • sh - Bourne shell, en äldre kommandotolk.
  • bash - Bourne Again SHell, en populär kommandotolk.
  • zsh - Z shell, en avancerad kommandotolk.
  • ksh - Korn shell, en annan populär kommandotolk.

Källor