Frage

Das frustriert mich seit zwei Tagen und es scheint, als ob es eine sehr einfache Sache sein sollte.Ich habe gerade ein Konto auf einem Solaris-Computer erstellt.Sun OS 5.10 glaube ich.

Die Standardeinstellung ist die Bourne-Shell, die ich nicht möchte.Ich habe ein cat /etc/shells was zu Folgendem führt:

/bin/sh
/sbin/sh
/bin/ksh
/usr/bin/ksh

Sieht so aus, als ob Korn Shell alles ist, was ich verwenden kann.

Ich habe eine erstellt .profile datei und schrieb:

export SHELL=/usr/bin/ksh

Dann habe ich einen gemacht env und es sieht so aus /bin/sh ist immer noch als meine Shell aufgeführt.Ich habe mich abgemeldet, wieder angemeldet und jetzt bekomme ich:

-sh: SHELL=/usr/bin/ksh: is not an identifier

Ich habe versucht hinzuzufügen #!/usr/bin/ksh zu Beginn des .profile.Das hat nicht funktioniert.Ich habe versucht, am Ende des ein Semikolon hinzuzufügen export.Das hat nicht funktioniert.Ich habe es versucht: SHELL=/bin/ksh und das hat auch nicht funktioniert.

Mein Endziel ist es, diese Umgebung an einen Punkt zu bringen, an dem ich produktiv arbeiten kann.Ich bin es gewohnt zu schlagen, wo ich Tabulatoren, Aufwärtspfeile für Verlauf usw. habe, und diese Bourne-Shell hat nichts davon und es frustriert mich ohne Ende.

Ich weiß, dass das einfach sein muss, aber all mein Googeln bringt nichts.Kann mir jemand helfen?

War es hilfreich?

Lösung

/etc/shells ist keine Standard-Solaris-Datei, sollten Sie sich wahrscheinlich nicht auf ihren Inhalt verlassen.

Auf der anderen Seite, bash ist Teil der Standardinstallation von Solaris 10.Es sollte bereits vorhanden sein als /bin/bash (/usr/bin/bash eigentlich aber /bin ist ein Symlink zu /usr/bin trotzdem).

Wenn bash ist nicht da, möchten Sie vielleicht den Administrator bitten, das zu installieren SUNWbash paket von der Solaris_10/Product verzeichnis auf dem Installationsmedium.

Um Ihre Shell zu aktualisieren, besteht der reguläre Weg darin, die für Ihr Konto definierte Shell zu aktualisieren.Wenn es lokal ist, ist dies das letzte Feld in Ihrem /etc/passwd Eintrag.

Alternativ können Sie diesen Hack am Ende Ihres .Profil:

[ ! "$BASH_VERSION" -a -x /bin/bash ] && SHELL=/bin/bash exec /bin/bash 

Andere Tipps

In absteigender Reihenfolge der Präferenz

  1. bitten Sie den Systemadministrator, bash zu installieren und / etc / shells zu aktualisieren und Ihre Login-Shell zu aktualisieren
  2. sehen Sie, ob die chsh es ist ein Programm installiert, mit dem Sie Ihre eigene Login-Shell ändern können
  3. bitten Sie den Systemadministrator, Ihre Anmeldeshell in / usr / bin / ksh zu ändern
  4. ändern Sie Ihr ~/ .Profil:

    if type [[ >/dev/null; then
        : # this is ksh
    else
        # not ksh
        export SHELL; SHELL=/usr/bin/ksh
        exec $SHELL
    fi
    
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top