Linuxには豊富なコマンドが付属しており、各コマンドは一意であり、特定の場合に使用されます。 Linuxの目標は、可能な限り高速かつ効率的になることを支援することです。 Linuxコマンドの特性の1つは、時間制限です。任意のコマンドに時間制限を設定できます。時間が経過すると、コマンドの実行が停止します。
この短いチュートリアルでは、コマンドで制限時間を使用する方法について2つの方法を学習します。
このページ:
- タイムアウトツールを使用してLinuxコマンドを実行する
- Timelimitプログラムを使用してLinuxコマンドを実行する
Linuxには、タイムアウトと呼ばれるコマンドラインユーティリティがあります。 、これにより、制限時間内にコマンドを実行できます。
構文は次のとおりです。
timeout [OPTION] DURATION COMMAND [ARG]...
このコマンドを使用するには、タイムアウトを指定します 実行するコマンドの値(秒単位)。たとえば、 5の後にpingコマンドをタイムアウトするには 秒、次のコマンドを実行できます。
# timeout 5s ping google.com
(s)を指定する必要はありません 番号の後5 。以下のコマンドは同じであり、引き続き機能します。
# timeout 5 ping google.com


その他の接尾辞は次のとおりです。
-
m
分を表す -
h
時間を表す -
d
日を表す
タイムアウトが最初の信号を送信した後でも、コマンドが実行され続ける場合があります。このような場合は、--kill-after
を使用できます。 オプション。
構文は次のとおりです。
-k, --kill-after=DURATION
タイムアウトを許可するには、期間を指定する必要があります キル信号が送信される時間がどれくらいになるかを知ってください。
たとえば、表示されているコマンドは 8の後に終了します 秒。
# timeout 8s tail -f /var/log/syslog


期限 プログラムは指定されたコマンドを実行し、指定された信号を使用して指定された時間後にプロセスを終了します。最初に警告信号を渡し、タイムアウト後にキル信号を送信します。
タイムアウトとは異なり オプション、期限 killsigなどのオプションがあります 、警告 、キルタイム 、および警告 。
期限 Debianのリポジトリにあります ベースのシステムとそれをインストールするには、次のコマンドを使用します。
$ sudo apt install timelimit
アーチベースの場合 システムの場合、 AURを使用してインストールできます ヘルパープログラム(例: Pacaur ) パックマン 、およびパッカー 。
# Pacman -S timelimit # pacaur -S timelimit # packer -S timelimit
他のLinuxディストリビューションでは、制限時間のソースをダウンロードして手動でインストールできます。
インストール後、次のコマンドを実行して時間を指定します。この例では、 10を使用できます 秒。
$ timelimit -t10 tail -f /var/log/pacman.log
引数を指定しない場合は、期限 デフォルト値を使用します: warntime =3600 秒、 warnsig =15 、 killtime =120 、および killsig =9 。
結論
このガイドでは、Linuxで制限時間付きのコマンドを実行する方法を学習しました。レビューでは、タイムアウトを使用できます コマンドまたは制限時間 ユーティリティ。
タイムアウト コマンドは使いやすいですが、制限時間 ユーティリティは少し複雑ですが、より多くのオプションがあります。ニーズに応じて最適なオプションを選択できます。