先日、rsync を使用して LAN 上の別のシステムに大きなファイルを転送していました。非常に大きなファイルなので、完了するまでに約 20 分かかります。もうこれ以上待ちたくないし、プロセスを終了させるために CTRL+C を押したくもありません。 Linux OS でコマンドを特定の時間実行し、タイムアウトしたら自動的に終了させる簡単な方法があるかどうかを知りたかったので、この投稿をしました。引き続きお読みください。 Linuxで特定の時間にコマンドを実行する これには 2 つの方法があります。 方法1 – タイムアウトコマンドを使用する 最も一般的な方法は、timeout コマンドを使用することです。ご存知ない方のために説明すると、timeout コマンドはプロセスの絶対実行時間を効果的に制限します。 timeout コマンドは GNU coreutils パッケージの一部であるため、すべての GNU/Linux システムにプリインストールされています。 コマンドを 5 秒間だけ実行して、その後終了したいとします。これを行うには、次を使用します。 たとえば、次のコマンドは 10 秒後に終了します。 秒の後の接尾辞 s を省略することもできます。以下のコマンドは上記と同じです。 その他の可能な接尾辞は次のとおりです。
tail -f /var/log/pacman.log コマンドを実行すると、CTRL+C を押して手動で終了するまで実行が継続されます。ただし、timeout コマンドを使用して実行すると、指定された時間間隔後に自動的に終了します。タイムアウト後もコマンドがまだ実行されている場合は、以下に示すように kill シグナルを送信できます。 この場合、10 秒後に tail コマンドがまだ実行されている場合、timeout コマンドは 20 秒後に kill 信号を送信して終了します。 詳細については、man ページを参照してください。 場合によっては、特定のプログラムの完了に長い時間がかかり、システムがフリーズしてしまうことがあります。この場合、このトリックを使用すると、一定時間後にプロセスを自動的に終了できます。 方法2 - 時間制限プログラムを使用する timelimit 指定された引数を使用して指定されたコマンドを実行し、指定された時間後に指定されたシグナルでプロセスを終了します。まず警告信号を送信し、タイムアウト後に kill 信号を送信します。 タイムアウトとは異なり、timelimit にはより多くのオプションがあります。 killsig、warnsig、killtime、warntime などの複数の引数を渡すことができます。これは、Debian ベースのシステムのデフォルトのリポジトリで利用できます。したがって、次のコマンドを使用してインストールできます。 Arch ベースのシステムの場合は、AUR で利用できます。したがって、Pacaur、Packer、Yay、Yaourt などの AUR ヘルパーを使用してインストールできます。 その他のディストリビューションの場合は、ここからソースをダウンロードして手動でインストールしてください。 timelimit をインストールした後、次のコマンドを実行して、特定の期間 (たとえば 10 秒) 実行します。 引数なしで timelimit を実行すると、デフォルト値が使用されます: warntime=3600 秒、warnsig=15 秒、killtime=120 秒、killsig=9。詳細については、このガイドの最後に記載されているマニュアル ページとプロジェクトの Web サイトを参照してください。 要約する 以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。これについてもっと知りたい場合は、次のリンクをご覧ください。 以下もご興味があるかもしれません:
|
<<: JavaScriptはマウスの動きに追従するボックスを実装します
>>: JavaScript が重複したネットワークリクエストを防ぐ方法の例
製品設計者は、複雑で大規模な製造システムと多様な市場に直面しているため、知識体系には幅広さと深さの両...
インターネット上には多くのインポート方法があり、公式も3つのインポート方法を提供していますが、インポ...
この記事では、ページング効果表示を実現するためのnode+expressの具体的なコードを参考までに...
まず、イメージをプルします(またはコンテナを作成するだけで、自然にプルされます)。 docker p...
目次アプリ更新プロセス大まかなフローチャートアプリ情報の更新1. まず取得する必要があるファイルアド...
なぜテキストエリアについて具体的に言及するのでしょうか?なぜなら、textarea ノードは実際には...
キーペアの分離1 つ以上の Linux インスタンスから SSH キー ペアのバインドを解除します。...
大学 4 年生のときのインターンシップ中に、表内のデータの番号をクリックすると、そのデータの下に新し...
これは純粋に CSS のみを使用して作成されたエフェクトです。簡単に言うと、このエフェクトは画像処理...
前回の記事では、MySQL 最適化の概要 - クエリの合計数を紹介しました。この記事では、クエリ ス...
Vue2.0/3.0双方向データバインディングの実装原理双方向データバインディングとは、データの変更...
目次1. Vスロットの紹介2. 匿名スロット3. 名前付きスロット4. スコープ付きスロット5. 動...
Linux システムのシャットダウン コマンドは何ですか? Liangxu Tutorial Net...
Firefox の下位バージョンでは中国語の文字を入力できず、上位バージョンでは文字化けした文字が表...
【序文】 ORM を使用してデータベース内のデータを操作する場合、前提として、新しい ORM モデル...