在另一个会话中截取 yakuake 会话的屏幕截图

在另一个会话中截取 yakuake 会话的屏幕截图

我正在使用 yakuake,并且正在运行多个会话。是否有任何(希望是简单的)方法可以通过另一个终端(例如 konsole 或 ssh)来获取所有会话的屏幕截图?或者是否有 yakuake 的替代品(例如 guake)可供我使用?谢谢!

答案1

好的,知道了,通过使用qdbus:

#/bin/bash

# clear first old screenshots 
rm screenshot_*.png

# helper from https://github.com/aplatanado/yakuake-session
function yakuake_showwindow() {
    local wid=$(wmctrl -xl | grep -iF 'yakuake.yakuake' | head -n1 | cut -d' ' -f1)
    if [[ -z "$wid" ]]; then
        qdbus org.kde.yakuake /yakuake/window toggleWindowState > /dev/null
    else
        wmctrl -i -a $wid
    fi
}

# make sure yakuake is visible
yakuake_showwindow

# caputer all sessions
s=0
for x in `qdbus org.kde.yakuake /yakuake/sessions terminalIdList | sed -e 's/,/ /g'`; do 
    let "s++"
    #echo $s $x 
    qdbus org.kde.yakuake /yakuake/sessions raiseSession $x; 
    import -window root -resize 1920x1080  screenshot_$s.png
done

相关内容