web-dev-qa-db-ja.com

F5を押したときのように、GUIデスクトップを更新するコマンドラインコマンド?

デスクトップアイコンを更新するコマンドはありますか(F5ボタンとまったく同じです)?

これが必要なのは、スタートアップアプリケーションでバックアップパーティションをマウントするコマンドを設定し、そこにいくつかのディレクトリへのデスクトップリンクを作成したためです。問題は、F5を押さない限り、ログイン時にアイコンが更新されないことです。そのために、スタートアップアプリケーションにコマンドを追加したいと思います。 (注: here が言ったように、GNOME ShellまたはUnityを再起動したくないことに注意してください。F5の動作を正確に実行するコマンドが必要です。 )

更新が難しい場合は、Nautilusを再起動できます。

pkill nautilus
nautilus -n

スタートアップアプリケーションエントリは、スクリプトの一部としてこれらのコマンドを追加するように簡単に変更できます。

udisks --mount  ... && pkill -u nautilus && nautilus -n

Nautilusには、それ自体で終了させる-qオプションがありますが、これはnautilus -nではうまく機能しません。

5
muru

xdotool を使用してキーを押すことをエミュレートできます。マップされている関数を直接呼び出す方法が見つからない場合:

xdotool key F5

難しいのは、現在のウィンドウがデスクトップではないときにそれを行うことです。
searchコマンドで検索できるはずですが、実験が必要な場合があります。

最初に、getwindownameを使用して一致するウィンドウのタイトルを表示し、適切なウィンドウを見つけようとします。

xdotool search --class Desktop getwindowname

結果が正しい場合は、次を試してください。

xdotool search --class Desktop key F5

それ以外の場合、man xdotoolのその他のオプションについては xdotool search を参照してください。
既存のウィンドウを機能させるためにさらに情報が必要な場合、これらのコマンドを調べるのに最も便利なのは、 xwininfo および xprop です。

5
Volker Siegel