RaspberryPi を繋げたディスプレイやテレビの画面にssh経由でアプリの画面を出す(その2)

ALL
スポンサーリンク

RaspberryPi をディスプレイやテレビにつなげている場合に、sshでの接続からでもアプリを、ディスプレイ/テレビの画面に出す方法です。

以前下記を紹介しましたが、違いは、下記記事では ssh接続のセッションの延長でのアプリ起動に対し、こちらはディスプレイやテレビで見えている画面(セッション)での起動です。
つまり、RaspberryPi にキーボードやマウスをつなげて、画面上で起動させるのと同じことが出来ます。

RaspberryPi を繋げたテレビの画面に ssh経由でアプリの画面を出す パソコン鳥のブログ

次のファイル readaction.pl と readaction.sh を作成します。

/home/pi/readaction.pl

#! /usr/bin/perl
use IO::Handle;
$target = $ARGV[0];
system( "echo > $target" );
open( IN , "tail -f $target |" );
IN->autoflush(1);
while( 1 ){
    $line = <IN>;
    system( $line );
}

/home/pi/readaction.sh

/home/pi/readaction.pl /home/pi/action.dat &

実行権限を付けます。

chmod +x readaction.pl

RaspberryPI のローカル(ディスプレイ上)から次を実行します。

/bin/sh /home/pi/readaction.sh

この後、/home/pi/action.dat に書き込まれた内容が実行されます。
例えば、次を実行すると、emacs が起動します。

echo “emacs &” > /home/pi/action.dat

起動時から機能させるには、下記のファイルを追記して自動実行されるようにします。

.config/lxsession/LXDE-pi/autostart

@/bin/sh /home/pi/readaction.sh

これで、リモートから ssh で接続した状態でも、アプリを起動させることができます。

コメント