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

So führen Sie einen Befehl mit Zeitlimit (Timeout) in Linux aus

Linux wird mit einer Fülle von Befehlen geliefert, wobei jeder Befehl einzigartig ist und in bestimmten Fällen verwendet wird. Das Ziel von Linux ist es, Ihnen dabei zu helfen, so schnell und effizient wie möglich zu arbeiten. Eine Eigenschaft eines Linux-Befehls ist das Zeitlimit. Sie können für jeden gewünschten Befehl ein Zeitlimit festlegen. Wenn die Zeit abgelaufen ist, wird die Ausführung des Befehls beendet.

In diesem kurzen Tutorial lernen Sie zwei Methoden kennen, wie Sie ein Zeitlimit in Ihren Befehlen verwenden können.

Auf dieser Seite:
  1. Linux-Befehle mit dem Timeout-Tool ausführen
  2. Linux-Befehle mit dem Timelimit-Programm ausführen

Linux-Befehle mit dem Timeout-Tool ausführen

Linux verfügt über ein Befehlszeilendienstprogramm namens Timeout , mit dem Sie einen Befehl zeitlich begrenzt ausführen können.

Seine Syntax ist wie folgt.

timeout [OPTION] DURATION COMMAND [ARG]...

Um den Befehl zu verwenden, geben Sie ein Zeitlimit an Wert (in Sekunden) mit dem Befehl, den Sie ausführen möchten. Zum Beispiel, um einen Ping-Befehl nach 5 abzubrechen Sekunden können Sie den folgenden Befehl ausführen.

# timeout 5s ping google.com

Sie müssen die (s) nicht angeben nach Nummer 5 . Der folgende Befehl ist derselbe und funktioniert weiterhin.

# timeout 5 ping google.com

Andere Suffixe sind:

  • m repräsentiert Minuten
  • h repräsentiert Stunden
  • d repräsentiert Tage

Manchmal können Befehle weiter ausgeführt werden, selbst nachdem timeout das erste Signal gesendet hat. In solchen Fällen können Sie --kill-after verwenden Option.

Hier ist die Syntax.

-k, --kill-after=DURATION

Sie müssen eine Dauer für die Zeitüberschreitung angeben wissen, nach wie viel Zeit das Kill-Signal gesendet werden soll.

Der gezeigte Befehl wird beispielsweise nach 8 beendet Sekunden.

# timeout 8s tail -f /var/log/syslog

Linux-Befehle mit dem Timelimit-Programm ausführen

Das Zeitlimit Das Programm führt einen bestimmten Befehl aus und beendet den Prozess nach einer bestimmten Zeit mit einem bestimmten Signal. Es übergibt zunächst ein Warnsignal und sendet nach einer Zeitüberschreitung das Kill-Signal.

Im Gegensatz zum Timeout Option, Zeitlimit hat mehr Optionen wie killsig , Warnzeichen , Killtime , und Warnzeit .

Zeitlimit finden Sie in den Repositories von Debian -basierten Systemen und verwenden Sie den folgenden Befehl, um es zu installieren.

$ sudo apt install timelimit

Für Arch-basiert Systemen können Sie es mit AUR installieren Hilfsprogramme, z. B. Pacaur Pacman und Packer .

# Pacman -S timelimit
# pacaur -S timelimit
# packer -S timelimit

Bei anderen Linux-Distributionen können Sie die Timelimit-Quelle herunterladen und manuell installieren.

Führen Sie nach der Installation den folgenden Befehl aus und geben Sie die Uhrzeit an. In diesem Beispiel können Sie 10 verwenden Sekunden.

$ timelimit -t10 tail -f /var/log/pacman.log

Beachten Sie, dass, wenn Sie keine Argumente angeben, Zeitlimit verwendet die Standardwerte:warntime=3600 Sekunden, warnsig=15 , killtime=120 und killsig=9 .

Schlussfolgerung

In dieser Anleitung haben Sie gelernt, wie Sie unter Linux Befehle mit Zeitlimit ausführen. Zur Überprüfung können Sie das Timeout verwenden Befehl oder das Zeitlimit Dienstprogramm.

Die Zeitüberschreitung Der Befehl ist einfach zu verwenden, aber das Timelimit Dienstprogramm ist ein bisschen kompliziert, hat aber mehr Optionen. Sie können je nach Bedarf die am besten geeignete Option auswählen.


Linux
  1. Planen Sie eine Aufgabe mit dem Linux-Befehl at

  2. Anhand von Beispielen wird die Verwendung des Vmstat-Befehls unter Linux erläutert

  3. Überprüfen Sie, wie lange die Ausführung eines Bash-Skripts mit dem Time-Befehl dauert

  4. So beschränken Sie Benutzerbefehle in Linux

  5. Linux:Wie man einen Befehl in einem bestimmten Verzeichnis ausführt

So führen Sie Linux-Befehle im Hintergrund aus

Timeout-Befehl in Linux

So verwenden Sie den Linux-rm-Befehl mit Beispielen

So führen Sie einen Befehl für eine bestimmte Zeit in Linux aus

So führen Sie einen Alias ​​mit Sudo in Linux aus

Führen Sie Befehle mit einem Zeitlimit in Ubuntu 20.04 aus