Gnome
檢查 Nautilus 文件管理器是否正在執行的最佳方法?
我一直在努力解決這個問題。當 nautilus 文件管理器未執行時,nautilus 正在執行,因為它控制桌面上的圖示。
$ ps -aux | grep nautilus | grep -v grep rick 5613 0.2 1.7 2355392 140012 pts/19 Sl+ 19:04 0:08 nautilus
所以在沒有打開 nautilus 文件管理器的情況下使用這個命令,你會看到:
$ ps -L -p 5613 -o pid,nice,lwp,comm PID NI LWP COMMAND 5613 0 5613 nautilus 5613 0 5614 gmain 5613 0 5615 gdbus 5613 0 5617 dconf worker
現在打開 nautilus 文件管理器並重做
ps
命令:$ nautilus $ ps -L -p 5613 -o pid,nice,lwp,comm PID NI LWP COMMAND 5613 0 5613 nautilus 5613 0 5614 gmain 5613 0 5615 gdbus 5613 0 5617 dconf worker 5613 0 4788 pool
關閉 nautilus 文件視窗並重新執行命令(等待一兩秒後),池就會消失。
這是查看 nautilus 文件管理器是否正在執行的正確方法嗎?
我已將上述技術整合到Ask Ubuntu中的答案中,如果可能的話我想改進:
檢查是否有任何 Nautilus 視窗打開的最佳方法是在會話 D-Bus 上檢查它們:
gdbus introspect --session --dest org.gnome.Nautilus \ --object-path /org/gnome/Nautilus --recurse | awk '/^ *node /{print $2}'
/org/gnome/Nautilus/window
如果有任何打開的視窗,這將顯示視窗條目;所以gdbus introspect --session --dest org.gnome.Nautilus \ --object-path /org/gnome/Nautilus --recurse | grep -q '^ *node /org/gnome/Nautilus/window/'
如果有任何打開的視窗將成功,否則失敗。