Linux-Shell und -Prozess
Führen Sie hier zunächst ein paar Befehle aus:
Drucken Sie die ID des Anmeldevorgangs aus (die immer bis zum Anmelden und Beenden vorhanden ist)
george.guo@ls:~$ echo $PPID 3411 george.guo@ls:~$ ps -aux | grep 3411 george.+ 3411 0.0 0.0 99004 4520 ? S 11:00 0:00 sshd: george.guo@pts/46
Drucken Sie den Shell-Prozess aus, der durch den Anmeldevorgang ausgegeben wurde (existiert immer bis zum Anmelden und Beenden)
george.guo@ls:~$ echo $$ 3412 george.guo@ls:~$ ps -aux | grep 3412 george.+ 3412 0.5 0.0 21380 5120 pts/46 Ss 11:00 0:00 -bash
Wie aus den obigen Befehlen ersichtlich ist:
Die Anmeldeprozess-ID lautet 3411, wodurch der Bash-Shell-Unterprozess 3412 erstellt wird. Zukünftige Skriptausführung,
3412 Wir nennen es hier die Haupt-Shell, die den Subshell-Prozess zur Verarbeitung des Skripts startet.
(Hinweis: In Bash wird die PID des Subshell-Prozesses in einer speziellen Variablen „$$“ gespeichert, und die PPID speichert die ID des übergeordneten Prozesses der Subshell.)
Schreiben wir zwei kleine Programme zur Überprüfung:
george.guo@ls:~$ cat ja.c
#include #include #include <sys/types.h> #include int main() { pid_t pid; pid_t ppid; pid = getpid(); ppid = getppid(); system("./test"); //system will fork a process for exec ./test printf("yes pid = %d, yes ppid = %d\n", pid, ppid); }
george.guo@ls:~$ Katzentest
#!/bin/bash echo "PID of this script: $$" echo "test's PPID(system's fork id) = $PPID" echo "tests's pid = $$"
Die Laufergebnisse sind wie folgt:
george.guo@ls~$ ./ja
PID of this script: 6082 tests PPID(system's fork id)= 6081 echo tests self pid is 6082 yes PID = 6080, yes PPID = 3412
Es ist ersichtlich, dass die übergeordnete Prozess-ID des Ja-Prozesses 3412 ist. Dies ist der untergeordnete Bash-Shell-Prozess des Login-Prozess-Forks und der Haupt-Shell. Das liegt daran
yes wird von der Haupt-Shell ausgeführt. Ja, die Prozess-ID ist 6080, Call System, Fork und die Subshell-ID ist 6081.
Für Systemaufrufe:
Um system() zum Ausführen von Befehlen zu verwenden, müssen mindestens zwei Prozesse erstellt werden. Eine zum Ausführen der Shell (hier lautet die ID 6081),
Der andere oder die anderen werden für Befehle verwendet, die von der Shell ausgeführt werden (hier ist eine Subshell, die der Skripttest selbst ist).
Die Prozess-ID des Skripttests selbst ist 6082.
Das obige ist der detaillierte Inhalt vonLinux-Shell und -Prozess. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

VS Code system requirements: Operating system: Windows 10 and above, macOS 10.12 and above, Linux distribution processor: minimum 1.6 GHz, recommended 2.0 GHz and above memory: minimum 512 MB, recommended 4 GB and above storage space: minimum 250 MB, recommended 1 GB and above other requirements: stable network connection, Xorg/Wayland (Linux)

Die fünf grundlegenden Komponenten des Linux -Systems sind: 1. Kernel, 2. Systembibliothek, 3. System Utilities, 4. Grafische Benutzeroberfläche, 5. Anwendungen. Der Kernel verwaltet Hardware -Ressourcen, die Systembibliothek bietet vorkompilierte Funktionen, Systemversorgungsunternehmen werden für die Systemverwaltung verwendet, die GUI bietet visuelle Interaktion und Anwendungen verwenden diese Komponenten, um Funktionen zu implementieren.

Das integrierte VSCODE-integrierte Terminal ist ein Entwicklungstool, mit dem das Ausführen von Befehlen und Skripten innerhalb des Editors den Entwicklungsprozess vereinfachen kann. Verwenden Sie VSCODE -Anschluss: Öffnen Sie das Terminal mit der T -T -T -Taste (Strg/CMD). Geben Sie einen Befehl ein oder führen Sie das Skript aus. Verwenden Sie Hotkeys (z. B. Strg l, um das Terminal zu löschen). Ändern Sie das Arbeitsverzeichnis (z. B. den CD -Befehl). Zu den erweiterten Funktionen gehören Debug -Modus, automatischer Code -Snippet -Abschluss und interaktiver Befehlsverlauf.

Um die Git -Repository -Adresse anzuzeigen, führen Sie die folgenden Schritte aus: 1. Öffnen Sie die Befehlszeile und navigieren Sie zum Repository -Verzeichnis; 2. Führen Sie den Befehl "git remote -v" aus; 3.. Zeigen Sie den Repository -Namen in der Ausgabe und der entsprechenden Adresse an.

Obwohl Notepad den Java -Code nicht direkt ausführen kann, kann er durch Verwendung anderer Tools erreicht werden: Verwenden des Befehlszeilencompilers (JAVAC), um eine Bytecode -Datei (Dateiname.class) zu generieren. Verwenden Sie den Java Interpreter (Java), um Bytecode zu interpretieren, den Code auszuführen und das Ergebnis auszugeben.

Das Schreiben von Code in Visual Studio Code (VSCODE) ist einfach und einfach zu bedienen. Installieren Sie einfach VSCODE, erstellen Sie ein Projekt, wählen Sie eine Sprache aus, erstellen Sie eine Datei, schreiben Sie Code, speichern und führen Sie es aus. Die Vorteile von VSCODE umfassen plattformübergreifende, freie und open Source, leistungsstarke Funktionen, reichhaltige Erweiterungen sowie leichte und schnelle.

Zu den Hauptanwendungen von Linux gehören: 1. Server -Betriebssystem, 2. Eingebettes System, 3. Desktop -Betriebssystem, 4. Entwicklungs- und Testumgebung. Linux zeichnet sich in diesen Bereichen aus und bietet Stabilität, Sicherheits- und effiziente Entwicklungstools.

Es gibt sechs Möglichkeiten, Code in Sublime auszuführen: durch Hotkeys, Menüs, Build-Systeme, Befehlszeilen, Standard-Build-Systeme und benutzerdefinierte Build-Befehle und führen Sie einzelne Dateien/Projekte aus, indem Sie mit der rechten Maustaste auf Projekte/Dateien klicken. Die Verfügbarkeit des Build -Systems hängt von der Installation des erhabenen Textes ab.
