GNU/Linux >> LINUX-Kenntnisse >  >> Debian

Welche Shell sollte ich für Freebsd und Debian lernen?

Ich habe viele Artikel gelesen, die besagen, dass die offizielle Shell in FreeBSD tcsh ist , und in Debian sein dash . Wenn ich jedoch entweder echo $shell (FreeBSD) oder env In Debian heißt es, dass die Shell csh ist im ersten Fall oder bash in Debian.

Dies ist in frischen Installationen. Ich habe unter dem Root-Konto und einem normalen Benutzerkonto getestet. Wenn ich ein neues Konto in FreeBSD erstelle, habe ich außerdem die Wahl zwischen 3 Shells; sh , csh oder tcsh . Wenn ich mich nicht entscheide, csh ist die Standardeinstellung für das Konto.

Was ist die offizielle Standard-Shell unter diesen Systemen? Ist es tcsh oder csh unter FreeBSD? Ist es dash oder bash in Debian?

Bin ich es, der etwas falsch macht? Oder sind die Artikel und Seiten falsch informiert?

Ich möchte zwei Shells lernen:eine für Debian und eine für FreeBSD, aber ich kann nicht finden, welche ich lernen soll, da nicht klar ist, welche die offizielle Shell ist.

Außerdem habe ich bei der Suche nach einer Shell, die ich lernen sollte, Folgendes gefunden:http://www.faqs.org/faqs/unix-faq/shell/csh-whynot/
Ist es jemand, der es einfach nicht mag csh , oder sollten wir wirklich csh vermeiden ?

Ich verwende die neuesten Debian- und FreeBSD-Versionen.

Ich fange an, mich mit all diesen Shell-Optionen zu verirren, sie sehen alle gleich aus (mit Ausnahme der Syntax; ich meine, sie scheinen alle die gleichen Möglichkeiten zu bieten). Deshalb möchte ich die offizielle lernen.

Akzeptierte Antwort:

Es ist überhaupt nicht erforderlich, die Standard-Shell für ein bestimmtes System zu verwenden. Sowohl Debian als auch FreeBSD bieten eine Reihe unterschiedlicher Shells, und die meisten oder alle von ihnen sind auf beiden verfügbar, entweder vorinstalliert oder leicht installierbar.

Achten Sie auf die Namensgebung. Es ist nicht ungewöhnlich für /bin/csh um wirklich tcsh zu sein, oder für /bin/sh bash oder ksh sein.

sh , die Bourne-Shell, ist die älteste noch gebräuchliche Unix-Shell. bash ist wahrscheinlich das am weitesten verbreitete sh-Derivat; ksh und zsh sind ebenfalls weit verbreitet.

csh , die C-Shell, wurde von Bill Joy für BSD entwickelt. Es hat einige Funktionen, die eine bequemere interaktive Verwendung ermöglichen als sh (oder zumindest als die alte Version von sh die es damals gab). tcsh wird von csh abgeleitet , und fügt eine Menge neuer Funktionen hinzu, von denen die meisten auf die interaktive Verwendung abzielen. Wie Sie beim Lesen von csh.whynot gesehen haben, haben csh und tcsh einige Probleme, wenn es darum geht, sie für das Skripting im Gegensatz zur interaktiven Verwendung zu verwenden.

Ich persönlich habe mit csh angefangen und bin dann zu tcsh gewechselt, als es verfügbar wurde. Ich benutze csh jetzt selten für Skripte, ich bevorzuge sh oder bash (oder Perl für irgendetwas halbwegs Komplexes).

Verwandte:Die Option -F für ls?

(Aktualisierung, ein paar Jahre später:Ich habe tcsh inzwischen aufgegeben und verwende jetzt Bash interaktiv.)

Mein Rat wäre, sich eine einzelne Shell auszusuchen und sie gut zu lernen, indem man sie sowohl auf FreeBSD als auch auf Debian verwendet. Wenn Sie sich für tcsh entscheiden, müssen Sie es meiner Meinung nach unter Debian installieren:sudo apt-get install tcsh . Wenn Sie bash wählen, weiß ich nicht, ob es auf FreeBSD vorinstalliert ist; Wenn nicht, sollte es genauso einfach sein, es zu installieren.

Es ist nicht notwendig, dieselbe Shell interaktiv und für das Skripting zu verwenden, aber es kann einige Verwirrung vermeiden und für eine kürzere Lernkurve sorgen.

ksh ist wahrscheinlich ungefähr so ​​leistungsfähig wie bash, und zsh ist sogar noch leistungsstärker (und hat viele Funktionen, für deren Erlernen ich mir nie die Zeit genommen habe).

Ich schlage bash vor, sowohl für FreeBSD als auch für Debian (und für alle anderen Unix-ähnlichen Systeme, die Sie verwenden könnten), und sowohl für die interaktive Verwendung als auch für das Skripting. Aber andere Möglichkeiten sind vollkommen legitim, und einige könnten besser zu Ihnen passen.


Debian
  1. Installieren und konfigurieren Sie DRDB für die Replikation des Netzwerkdateisystems unter Debian 8

  2. Debian vs. Ubuntu für die Servernutzung, welches man wählen soll

  3. Debian – Holen Sie sich das neueste Gcc für Debian?

  4. OpenVPN-Setup-Skript für Debian und Ubuntu

  5. So installieren Sie ClamAV unter Debian 9 und suchen nach Schwachstellen

So installieren Sie PHP 5.6 und 7.0 - 8.1 als PHP-FPM &FastCGI für ISPConfig 3 mit apt auf Debian 8 bis 11

Linux-Kernel-Dienstprogramme – Skripte zum Kompilieren und Aktualisieren des neuesten Linux-Kernels für Debian und Derivate

Welches Backup-Tool ist das Beste für Debian 11?

So erstellen und führen Sie ein Shell-Skript in Debian 10 aus

So installieren und verwenden Sie Tilda – eine Dropdown-Konsole für Debian 10

How to FileRun on Debian 11 – Eine kostenlose und private Cloud für uns!