Heim  >  Artikel  >  System-Tutorial  >  Kennen Sie den Unterschied zwischen interaktiver Shell und Profil?

Kennen Sie den Unterschied zwischen interaktiver Shell und Profil?

WBOY
WBOYnach vorne
2024-02-14 16:09:02819Durchsuche

Neu gepostet von:/u010127245/article/details/51689636

Der Unterschied zwischen bashrc und Profil

Was den Unterschied zwischen bashrc und Profil betrifft, müssen Sie zunächst verstehen, welche interaktiven Shells und nicht interaktiven Shells und welche Anmelde-Shells und Nicht-Anmelde-Shells sind.

Interaktiver Modus bedeutet, dass die Shell auf Ihre Eingabe wartet, die von Ihnen übermittelten Befehle jedoch ausführt. Diese Modi werden als interaktiv bezeichnet, da die Shell mit dem Benutzer interagiert. Auch diese Modi sind den meisten Benutzern bekannt: Anmelden, Ausführen einiger Befehle und Abmelden. Wenn Sie sich erneut anmelden, wird auch die Shell beendet.

Shell kann auch in einem anderen Modus ausgeführt werden: dem nicht interaktiven Modus. In diesen Modi interagiert die Shell nicht mit Android Linux, sondern liest in Dateien gespeicherte Befehle, führt sie jedoch aus. Wenn das Ende der Datei erreicht ist, wird die Shell beendet.

Bashrc und Profile werden beide zum Speichern der Umgebungsinformationen des Benutzers verwendet, Bashrc wird für die interaktive Nicht-Login-Shell, Linux-Installations-Cross-Compilation-Umgebungsvariablen und Profile für die interaktive Login-Shell verwendet. Es gibt viele Bashrc- und Profildateien im System, die im Folgenden einzeln vorgestellt werden:

/etc/pro Diese Datei legt die Umgebungsinformationen für jeden Benutzer des Systems fest. Wenn sich der erste Benutzer anmeldet, wird diese Datei ausgeführt

Und sammeln Sie Shell-Einstellungen aus der Konfigurationsdatei im Verzeichnis /etc/profile.d.

/etc/bashrc: Führen Sie diese Datei für jeden Benutzer aus, der Bashshell ausführt. Wenn Bashshell geöffnet wird, wird diese Datei gelesen. In einigen Linux-Versionen gibt es keine bashrc-Datei im Verzeichnis /etc.

~/.pro Jeder Benutzer kann diese Datei verwenden, um Shell-Informationen speziell für den eigenen Gebrauch einzugeben. Wenn sich der Benutzer anmeldet, wird das

Die Datei wird nur einmal ausgeführt! Standardmäßig werden einige Umgebungsvariablen festgelegt und dann die .bashrc-Datei des Benutzers ausgeführt.

~/.bashrc: Diese Datei enthält spezifische Bash-Informationen für die Bash-Shell eines Benutzers. Diese Datei wird gelesen, wenn sich der Benutzer anmeldet und jedes Mal, wenn eine neue Shell geöffnet wird

Darüber hinaus können die in /etc/profile festgelegten Variablen (global) jeden Benutzer betreffen, während die in ~/.bashrc usw. festgelegten Variablen (lokal) nur die Variablen in /etc/profile erben können. Bruder-Schwester-Beziehung.

Zusammenfassung:

/etc/profile, /etc/bashrc sind systemglobale Umgebungsvariableneinstellungen交叉编译环境变量如何设置_交叉编译环境搭建步骤_linux安装交叉编译环境变量

~/.profile, ~/.bashrc private Umgebungsvariableneinstellungen im Home-Verzeichnis des Benutzers

Wenn Sie beim Anmelden am System einen Shell-Prozess erhalten, müssen Sie die Umgebungskonfigurationsdatei in drei Schritten lesen

1 Das erste, was Sie lesen müssen, ist die Konfigurationsdatei der globalen Umgebungsvariablen /etc/profile und dann weitere Einstellungsdokumente entsprechend ihrem Inhalt zu lesen, z. B.

/etc/profile.d und /etc/inputrc

2 Gehen Sie danach je nach Benutzerkonto in ihr Home-Verzeichnis, um ~/.bash_profile zu lesen. Wenn dies nicht gelesen werden kann, lesen Sie es

~/.profile, diese drei Dokumenteinstellungen sind grundsätzlich gleich und das Lesen hat Vorrang

Nach 3 lesen Sie ~/.bashrc entsprechend dem Benutzerkonto

Was den Unterschied zwischen ~/.profile und ~/.bashrc betrifft

Alle verfügen über personalisierte Anpassungsfunktionen

~/.profile kann den eigenen Pfad des Benutzers zur Installation von Win7 auf einem Linux-System, Umgebungsvariablen usw. festlegen. Es kann nur einmal beim Anmelden ausgeführt werden

~/.bashrc ist auch ein benutzerspezifisches Einstellungsdokument. Sie können den Pfad und den Befehlsalias festlegen. Er wird bei jeder Ausführung von Shellscript einmal verwendet

【Drei Möglichkeiten zum Konfigurieren von Umgebungsvariablen】

Wenn Sie einen Pfad zu $PATH hinzufügen möchten, können Sie wie folgt vorgehen:

1. Console North ist mit der Verwendung dieser Techniken nicht einverstanden. Da Sie die Shell

Linux ändern, um kompilierungsübergreifende Umgebungsvariablen zu installieren, sind Ihre Einstellungen ungültig, sodass diese Methoden nur für die vorübergehende Verwendung bestimmt sind und Sie dies tun müssen Setzen Sie sie zurück, wenn Sie sie später verwenden möchten. Dies gilt nur für bestimmte Muscheln; $PATH="$PATH:/my_new_path" (durch Ausschalten der Shell wird PATH wiederhergestellt)

2.

Ändern Sie die Datei /etc/profile. Wenn Ihr Computer nur für die Entwicklung verwendet wird, wird empfohlen, diese Techniken zu verwenden. Da alle Benutzer-Shells das Recht haben, diese Umgebungsvariable zu verwenden, kann dies zu Sicherheitsproblemen für das System führen. (JDK-Konfiguration empfohlen)

Dies gilt für alle Benutzer und alle Shells;

$vi/etc/profile oben hinzugefügt:

exportPATH="$PATH:/my_new_path"

3.

Ändern Sie die .bashrc-Datei. Sie können die Berechtigung zur Verwendung dieser Umgebungsvariablen auf Benutzerebene steuern Sie müssen lediglich die .bashrc-Datei im Home-Verzeichnis für Ihren persönlichen Gebrauch ändern.

$vi/root/.bashrc oben hinzugefügt:

exportPATH="$PATH:/my_new_path"

Die beiden letztgenannten Methoden erfordern normalerweise ein erneutes Abmelden vom System, um wirksam zu werden (Sie können $source~/.profilefresh direkt verwenden, um einen Neustart zu verhindern:

).

$echo$PATH-Ausgabe ist bereits der neue Pfad.

Das obige ist der detaillierte Inhalt vonKennen Sie den Unterschied zwischen interaktiver Shell und Profil?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:itcool.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen