LinuxマシンでBukkit(Minecraft)サーバーを実行していますが、サーバーのコマンドを使用してサーバーを正常にシャットダウンし、コマンドラインからstop
使用して特定の時間にコンピューターを一時停止させたいと考えています。pm-suspend
これが私が持っているものです:
me@comp~/dir$ perl -e 'sleep [time]; print "stop\\n";' | ./server && sudo pm-suspend
(私は編集した/etc/sudoers
ので、一時停止するときにパスワードを入力する必要はありません。)
問題は、perl -e
がスリープしている間、サーバーは一定のバイトストリームを期待しているため(これは私の推測です。何かを誤解している可能性があります)、受信したものをすべて出力し、貴重なリソースを消費します。
me@comp~/dir$ ...
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>...
バッファリングされたパイプのようなものはありますか?そうでない場合、遅延入力をスクリプトに送信する方法はありますか?