私はタッチパッドエミュレータを実行するLinux Pinephoneスクリプトを書いています。これを行うには、次の出力文字列を比較する必要があります。
./TouchpadEmulator /dev/input/event2 /dev/input/event1
Enter キーを押すと端末が表示されます。
max x:719 max y:1439
そして、端末はコマンドプロンプトが表示されずに開いています。これは、コードがバックグラウンドで実行され続けることを意味します。
私の問題は、この「max x:719 max y:1430」をいくつかの変数、いくつかのファイル、または次のコマンドの引数として出力しようとしていることです。
私は次のことを試しました
./TouchpadEmulator /dev/input/event2 /dev/input/event1 > textfile.txt
しかし、textfile.txtはまだ空です。
私も試しました
echo $(./TouchpadEmulator /dev/input/event2 /dev/input/event1)
しかし、端末画面はまだ空です。
私の考えでは、コマンドは常にバックグラウンドで実行されるため、「./TouchpadEmulator...」が完全に実行されるのを待つため、エコーは実行されません。
答え1
おそらくSTDOUTではなくSTDERRに書き込むようです。
リダイレクトSTDERRのみを使用してください2> textfile.txt
。
読むman bash
。