1

Ustream からのライブ ストリームを記録するコマンドを生成する Python コードがあります。

番組を録画するためにこのスクリプトを週に 1 回実行するように cronjob を設定したいのですが、適切なコマンドを生成した後、一定時間実行されてから停止するように、Python コードで使用できるコードはありますか?

スクリプトを実行し、必要な時間を待ってから、その ID を使用してプロセスを強制終了する方法が必要だと思います。あれは正しいですか?

4

1 に答える 1

2

開始されたプロセスは、起動時にそのプロセス ID をファイルに書き込むことができます。次に、そのファイルを読み取り、そのファイル内のプロセス ID を強制終了する別の cron ジョブを作成します。

別の方法として (開始されたプロセスを変更するのではなく)、開始されたプロセスの ID をファイルに書き込む「スターター」bash スクリプトを作成することもできます。

#!/bin/bash -e
nohup python ustream_recorder.py > /tmp/ustream_recorder.log 2>&1 &
echo $! > /tmp/ustream_recorder.pid

次に、それを殺すには:

#!/bin/bash -e
kill -INT `cat /tmp/ustream_recorder.pid`
rm /tmp/ustream_recorder.pid
于 2012-10-15T01:33:06.033 に答える