\

Pythonのsubprocessモジュールを使用して、子プロセスを一定時間スリープさせる方法について説明します。

subprocessとは

Pythonのsubprocessモジュールは、新しいプロセスを生成し、そのプロセスの入出力を扱うためのモジュールです。

スリープ処理の実装

以下に、子プロセスを一定時間スリープさせるコードの例を示します。

import subprocess
import time

cmd = """
while true
do
    date
    sleep 1s
done
"""

p = subprocess.Popen(cmd, shell=True)
time.sleep(5)
p.kill()

このコードでは、無限ループを行う子プロセスを生成しています。子プロセスは毎秒現在の日時を出力し、その後1秒間スリープします。親プロセスは子プロセスを5秒間実行した後、子プロセスを終了します。

注意点

subprocess.Popenを使用するとき、shell=Trueを指定するとシェルインジェクションに悪用される可能性があるため、コマンドを入力を受け付けるような処理では使わないようにしてください。

以上がPythonとsubprocessを使ったスリープ処理の基本的な使い方です。この情報がPythonのプログラミングに役立つことを願っています。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です