この行がなぜ機能しないのかわかりません。
firefox & xdotool search --name firefox > file
xdotool search --name firefox
タイトルに「firefox」という単語を含むウィンドウが見つかると、数値が返されます。後で使用するには、ファイルにリダイレクトする必要があります。ポイントは、
chromium-browser & xdotool search --name firefox > file
そして
firefox & xdotool search --name chromium > file
完璧に動作します。問題はウィンドウをマッピングするのに必要な時間でなければなりません(ただし、sleep 10
中間に配置しても問題は解決しません)。そうしないと、同じシェルで操作を完了できません。最初のコマンドが完了した後ではなく、最初のコマンドが開始した後(または数秒後)に実行するには、2番目のコマンドが必要です。
2番目のコマンドは、同じターミナルシェルで実行した場合、または別のシェルで別のコマンドを実行した後に実行した場合にのみ出力を生成しますが、上記の例のように一緒には実行しません。 2回目の試みをdisown
し、ついにnohup
2回目の試みをしましたが、結果はありません。&
どんな提案がありますか?
答え1
--sync
オプションを追加すればいいと思います。xdotoolのマニュアルページ
- 同期
結果が出るまでブロックします。これは、アプリケーションを実行してアプリケーションウィンドウが表示されるのを待ちたい場合に便利です。
これは正しいコマンドを作成します
application & xdotool search --sync --name string_contained_in_the_window_title > file
私が知る限り
firefox & xdotool search --sync --name firefox > firefox.txt