LinuxのバックグラウンドでPythonプログラムを実行するいくつかの方法

LinuxのバックグラウンドでPythonプログラムを実行するいくつかの方法

1. 最初の方法は、unhup コマンドを直接使用してプログラムをバックグラウンドで実行することです。コマンドの形式は次のとおりです。

python ファイル名.py を unhup (> ***.log )&

このコマンドでは、python は実行するファイルが python ファイルであることを指定し、次のファイル名 .py は実行するファイルです。括弧内の内容は、通常コンソールに出力される内容を *.log ファイルにリダイレクトできることを示します。これはオプションです。これを行わない場合、内容はデフォルトで nohup.out ファイルに出力されます。括弧の後の & はバックグラウンド実行を示します。

2. 2 番目の方法は、スクリプトを記述し、そのスクリプトをサーバーに送信し、サーバーがスクリプト内のステートメントをバックグラウンドで実行するようにすることです。次の内容のスクリプト start.sh を定義するとします。

#!/bin/bash
実行したいファイルのパス名をcdします。python -u ***.py

上記のスクリプトで、#!/bin/bash は、こ​​のスクリプトが /bin/bash を使用して次のステートメントを解釈および実行することを意味します。cd は、現在のディレクトリから実行するファイルがあるディレクトリにジャンプすることを意味し、python -u ***.py は、***python ファイルを実行することを意味します。スクリプトを記述した後、次のコマンドを使用してスクリプトを実行し、プログラムをバックグラウンドで実行できるようにします。

./start.sh > 結果.log &

ここで、./start.shは現在のディレクトリでスクリプトstart.shを実行することを意味し、> result.logは元々コンソールに出力されたすべてのものをresult.logファイルに出力することを意味し、&はバックグラウンドで実行することを意味します。

ps -e コマンドを使用して、バックグラウンドで実行されているプロセスを表示できます。


上の図では、スクリプト start.sh と Python プログラムがバックグラウンドで正常に実行されたことがわかります。次に、cat result.log | more を通じて、コンソールに最初に出力された情報を表示できます。

注: Python ファイルで関数を実行するには、関数を定義するだけでなく、ファイル内で関数を呼び出すことも忘れないでください。

要約する

以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。これについてもっと知りたい場合は、次のリンクをご覧ください。

以下もご興味があるかもしれません:
  • Linux に Redis をインストールし、バックグラウンドで実行し、システムが自動的に起動するように設定する方法
  • Linux のバックグラウンドで実行するいくつかの方法 (まとめ)
  • Linux でバックグラウンドで実行中のプログラムを表示して終了する方法
  • Linux nohup はプログラムをバックグラウンドで実行し、表示します (nohup と &)
  • Linux で jar パッケージを起動してバックグラウンドで実行する方法
  • Linux で実行中のバックグラウンド プログラムを表示および終了する方法
  • Linux でバックグラウンド タスクを実行するために nohup と screen を使用する例と違いの簡単な分析
  • Linux のバックグラウンドで Springboot を実行する方法
  • Linux バックグラウンドでノード サービス コマンドを実行する方法
  • Python Nohup Linux バックグラウンド実行出力の問題を解決する
  • Linux でバックグラウンドでプロセスを確実に実行する方法の概要
  • Linuxのバックグラウンド操作とシャットダウンの詳細な説明、バックグラウンドタスクの表示
  • Linuxコマンドをバックグラウンドで実行する方法

<<:  MySQLアカウントのIP制限条件を変更する方法

>>:  CocosCreatorのホットアップデートの包括的な説明

推薦する

VMWare12 グラフィックチュートリアルで Apple Mac OS X をインストールする

1. はじめに:友人はシステム知識を学びたいと考えており、Apple のラップトップを使用していまし...

Webフロントエンド開発経験の概要

XMLファイルは、可能な限りutf-8でエンコードする必要があります。gb2312には、?など、保存...

セマンティック HTML タグの紹介

ここ数年、ウェブサイト開発では DIV+CSS が非常に人気があり、当時は大きな騒動を引き起こしまし...

Vueのコンポーネントの詳細な説明

目次1. コンポーネントの登録2. コンポーネントの使用3. 父から息子へ4. 息子から父へ5. ス...

CSS を使用して複数の方法で等幅レイアウトを実装するサンプルコード

この記事で説明する等幅レイアウトでは、純粋な CSS を使用して、要素の幅を手動で設定することなく、...

MySQLユーザーと権限管理の詳細な説明

この記事では、例を使用して MySQL ユーザーと権限の管理について説明します。ご参考までに、詳細は...

MySQLトリガーの使用と注意すべき点

目次トリガーについてトリガーの使用トリガーを作成するトリガーを表示トリガーの削除使用上の注意新旧の違...

未来志向の総合的なウェブデザイン:プログレッシブエンハンスメント

<br />原文: プログレッシブエンハンスメントを理解するアーロン・ガスタフソン翻訳:...

MySQL アカウント情報をエレガントにバックアップする方法

序文:最近、インスタンスの移行の問題に遭遇しました。データの移行後、データベースのユーザーと権限も移...

MySQL でテーブルデータをクリアする 2 つの方法とその違い

MySQL でデータを削除するには 2 つの方法があります。切り詰めは大まかな伐採の一種である削除は...

Mysql でよく使用される時間、日付、変換関数の概要

この記事では、主に実際のアプリケーションでよく使用されるMySQLの時刻と日付、および変換関数につい...

Vue3 の父子値転送に関する簡単な説明

目次父から息子へ: 1. 親コンポーネントのサブコンポーネントタグに、サブコンポーネントに渡されるデ...

Vue2.x と Vue3.x のルーティングフックの違いの詳細な説明

目次vue2.xプレコンセプト:ルーティングフックのカテゴリルーティングとコンポーネントの概念(フッ...

JSホモロジー戦略とCSRFの詳細な説明

目次概要同一生成元ポリシー (SOP)相同制限クロスドメインをバイパスクロスサイトリクエストフォージ...

dl、dt、dd リスト ラベルの例

dd タグと dt タグはリストに使用されます。通常は <ul><li> タ...