我有两个linux gnome命令,我想将它们合并为一个。
一个是给我的标题:
gdbus call -e -d org.gnome.Shell -o /org/gnome/Shell -m org.gnome.Shell.Eval global.get_window_actors()[`gdbus call -e -d org.gnome.Shell -o /org/gnome/Shell -m org.gnome.Shell.Eval global.get_window_actors().findIndex(a=>a.meta_window.has_focus()===true) | cut -d"'" -f 2`].get_meta_window().get_title() | cut -d'"' -f 2
而另一个给了我程序名:
gdbus call -e -d org.gnome.Shell -o /org/gnome/Shell -m org.gnome.Shell.Eval global.get_window_actors()[`gdbus call -e -d org.gnome.Shell -o /org/gnome/Shell -m org.gnome.Shell.Eval global.get_window_actors().findIndex(a=>a.meta_window.has_focus()===true) | cut -d"'" -f 2`].get_meta_window().get_wm_class() | cut -d'"' -f 2
现在调用几乎相同,但我无法同时检索两个参数。如何在一次通话中同时使用get_meta_window
和get_title
?
在bash中,您可以使用{ list; }
组合两个命令,其中list是命令列表。
示例:
{ echo foo; echo bar; }
foo
bar
然后,您可以按照自己的意愿过滤级联输出:
示例2:(将换行改为星号(
{ echo foo; echo bar ; } | tr “n” “*“
foo*bar*
注意:间距非常重要。在开头{和结尾}之间有一个空格。