Linux true-Befehl

Linux 命令大全Linux-Befehlsreferenz


Was ist der true-Befehl

trueEs ist einer der einfachsten Befehle in Linux/Unix-Systemen und hat nur eine Funktion:Immer Erfolg zurückgeben (Exit-Statuscode 0)。

Dieser Befehl scheint einfach zu sein, hat aber wichtige Verwendungen in der Shell-Skriptprogrammierung. Er entspricht einer "Nichts tun, aber immer erfolgreich sein"-Operation.


Grundlegende Syntax

Beispiele

true [--help] [--version]

Optionen

Option Beschreibung
--help Hilfeinformationen anzeigen und beenden
--version Versionsinformationen anzeigen und beenden

Funktionsweise

trueDer Ausführungsprozess des Befehls ist sehr einfach:

  1. Wenn Sie eingebentrueund die Eingabetaste drücken
  2. Das System führt diesen Befehl aus
  3. Der Befehl wird sofort abgeschlossen, ohne etwas zu tun
  4. Gibt den Exit-Statuscode 0 zurück (was Erfolg anzeigt)

Praktische Anwendungsfälle

1. Als Bedingung für eine Endlosschleife

Beispiele

while true; do
    echo "Dies ist eine Endlosschleife"
    sleep 1
done

In diesem Beispiel,while trueerzeugt eine Endlosschleife, weiltruegibt immer Erfolg (0) zurück, daher ist die Schleifenbedingung immer wahr.

2. Als eine standardmäßig erfolgreiche Operation

Beispiele

command || true

Diese Syntax bedeutet: wenncommandnicht ausgeführt werden kann, dann führetrue(ist immer erfolgreich), das stellt sicher, dass der gesamte Ausdruck immer einen erfolgreichen Status zurückgibt.

3. Als Platzhalter in Skripten

Beispiele

if [ condition ]; then
    :  # Nichts tun
else
    true  # Dies kann auch geschrieben werden, um nichts zu tun
fi

Hiertruedient als Ersatz für eine No-Op und macht die Codestruktur klarer.


Vergleich mit dem Befehl false

Linux hat auch einen entsprechendenfalseBefehl, der immer einen Fehler zurückgibt (Exit-Status-Code 1). Die folgende Tabelle zeigt die Unterschiede zwischen ihnen:

Befehl Funktion Exit-Status-Code Typische Verwendung
wahr Tut nichts, gibt Erfolg zurück 0 Endlosschleifen, Fehler werden ignoriert
false Tut nichts, gibt Fehler zurück 1 Testen der Fehlerbehandlung, bedingte Prüfungen

Implementierungsdetails

In den meisten Linux-Systemen,trueist ein eingebauter Befehl (Shell-Builtin), aber normalerweise gibt es auch eine eigenständige Binärversion:

Beispiele

$ type -a true
true ist ein Shell- Builtin
true ist /usr/bin/true
true ist /bin/true

Seine Implementierung ist extrem einfach und kann in C wie folgt dargestellt werden:

Beispiele

int main() {
    return 0;
}

Praktische Übungen

Versuchen Sie, es direkt im Terminal auszuführentrue, dann überprüfen Sie den Exit-Status-Code:

Beispiele

wahr
echo $?  # Dies gibt 0 aus

Erstellen Sie ein Skript mit einer Endlosschleife, das alle 5 Sekunden die aktuelle Uhrzeit ausgibt:

Beispiele

#!/bin/bash
while true; do
    date
    sleep 5
done

Testtruedas Verhalten in bedingten Anweisungen:

Beispiele

if true; then
    echo "Dies wird immer ausgeführt"
fi

FAQ

F: Tut der Befehl true wirklich nichts?A: Ja, er führt keine tatsächliche Operation aus, er gibt einfach einen erfolgreichen Exit-Status zurück.

F: Warum brauchen wir einen so scheinbar nutzlosen Befehl?A: In der Skriptprogrammierung brauchen wir manchmal einen Platzhalter oder eine Bedingung, die immer erfolgreich ist,trueund dieser Befehl erfüllt genau diesen Bedarf.

F: Was ist der Unterschied zwischen true und Doppelpunkt (:)?A: In den meisten Shells,:ist ebenfalls ein Befehl, der nichts tut, und sein Verhalten ist identischtruemit true. Allerdings,:ist ein reines Shell-Builtin, währendtruemöglicherweise eine eigenständige Binärversion hat.


Zusammenfassung

trueObwohl der Befehl einfach ist, ist er ein praktisches Werkzeug in der Shell-Skriptprogrammierung. Zu seinen Hauptmerkmalen gehören:

  • Gibt immer Erfolg zurück (Exit-Status-Code 0)
  • Führt keine tatsächliche Operation aus
  • Wird häufig für Endlosschleifen, Fehlerbehandlung und Code-Platzhalter verwendet

Linux 命令大全Linux-Befehlsreferenz

Andere Erweiterungen