1、首先需要通过apt-get install安装好qdbus,guake,yakuake
2、分别启动guake、yakuake,在命令最后加&符保证命令后台一直执行。
3、查询qdbus所支持guake相关命令,步骤如下:
lester@lester-ThinkPad-T410:~/$ qdbus|grep guake
org.guake.RemoteControl
lester@lester-ThinkPad-T410:~/$ qdbus org.guake.RemoteControl
/
/org
/org/guake
/org/guake/RemoteControl
lester@lester-ThinkPad-T410:~/$ qdbus org.guake.RemoteControl /org/guake/RemoteControl
method void org.guake.RemoteControl.add_tab(QString directory)
method void org.guake.RemoteControl.execute_command(QString command)
method int org.guake.RemoteControl.get_selected_tab()
method void org.guake.RemoteControl.quit()
method void org.guake.RemoteControl.rename_current_tab(QString new_text)
method void org.guake.RemoteControl.select_tab(int tab_index)
method void org.guake.RemoteControl.show_about()
method void org.guake.RemoteControl.show_hide()
method void org.guake.RemoteControl.show_prefs()
method QString org.freedesktop.DBus.Introspectable.Introspect()
lester@lester-ThinkPad-T410:~/$
4、查询qdbus所支持yakuake相关命令,步骤如下:
lester@lester-ThinkPad-T410:~/$ qdbus|grep yakuake
org.kde.yakuake
lester@lester-ThinkPad-T410:~/$ qdbus org.kde.yakuake
/
/KDebug
/Konsole
/MainApplication
/Sessions
/Sessions/6
/Sessions/8
/Windows
/Windows/6
/Windows/8
/yakuake
/yakuake/MainWindow_1
/yakuake/sessions
/yakuake/tabs
/yakuake/window
lester@lester-ThinkPad-T410:~/$ qdbus org.kde.yakuake /yakuake/sessions
method int org.kde.yakuake.activeSessionId()
method int org.kde.yakuake.activeTerminalId()
method void org.kde.yakuake.addSession()
method void org.kde.yakuake.addSessionQuad()
method void org.kde.yakuake.addSessionTwoHorizontal()
method void org.kde.yakuake.addSessionTwoVertical()
method bool org.kde.yakuake.hasUnclosableSessions()
method bool org.kde.yakuake.isSessionClosable(int sessionId)
method bool org.kde.yakuake.isSessionKeyboardInputEnabled(int sessionId)
method bool org.kde.yakuake.isTerminalKeyboardInputEnabled(int terminalId)
method void org.kde.yakuake.raiseSession(int sessionId)
method void org.kde.yakuake.removeSession(int sessionId)
method void org.kde.yakuake.removeTerminal(int terminalId)
method void org.kde.yakuake.runCommand(QString command)
method void org.kde.yakuake.runCommandInTerminal(int terminalId, QString command)
method int org.kde.yakuake.sessionIdForTerminalId(int terminalId)
method QString org.kde.yakuake.sessionIdList()
method void org.kde.yakuake.setSessionClosable(int sessionId, bool closable)
method void org.kde.yakuake.setSessionKeyboardInputEnabled(int sessionId, bool enabled)
method void org.kde.yakuake.setTerminalKeyboardInputEnabled(int terminalId, bool enabled)
method void org.kde.yakuake.splitSessionLeftRight(int sessionId)
method void org.kde.yakuake.splitSessionTopBottom(int sessionId)
method void org.kde.yakuake.splitTerminalLeftRight(int terminalId)
method void org.kde.yakuake.splitTerminalTopBottom(int terminalId)
method QString org.kde.yakuake.terminalIdList()
method QString org.kde.yakuake.terminalIdsForSessionId(int sessionId)
method int org.kde.yakuake.tryGrowTerminalBottom(int terminalId)
method int org.kde.yakuake.tryGrowTerminalBottom(int terminalId, uint pixels)
method int org.kde.yakuake.tryGrowTerminalLeft(int terminalId)
method int org.kde.yakuake.tryGrowTerminalLeft(int terminalId, uint pixels)
method int org.kde.yakuake.tryGrowTerminalRight(int terminalId)
method int org.kde.yakuake.tryGrowTerminalRight(int terminalId, uint pixels)
method int org.kde.yakuake.tryGrowTerminalTop(int terminalId)
method int org.kde.yakuake.tryGrowTerminalTop(int terminalId, uint pixels)
method QDBusVariant org.freedesktop.DBus.Properties.Get(QString interface_name, QString property_name)
method QVariantMap org.freedesktop.DBus.Properties.GetAll(QString interface_name)
method void org.freedesktop.DBus.Properties.Set(QString interface_name, QString property_name, QDBusVariant value)
method QString org.freedesktop.DBus.Introspectable.Introspect()
method QString org.freedesktop.DBus.Peer.GetMachineId()
method void org.freedesktop.DBus.Peer.Ping()
lester@lester-ThinkPad-T410:~/$
5、有了以上内容,就可以通过shell脚本来控制yakuake和guake开启和关闭,
yakuake支持分屏显示
guake支持多标签页显示,并且标签页名称可以自定义。