Um comando para mostrar o desktop [duplicado]

2

wmctrl -s pode ser usado para alternar entre os desktops virtuais. Existe um comando que mostra a área de trabalho? que é um comando que irá alternar entre minimizar todas as janelas e restaurá-las?

    
por user126106 03.01.2014 / 03:48

2 respostas

2

Para mostrar a área de trabalho, o comando:

wmctrl -k on

Para desativá-lo, use

wmctrl -k off
    
por virtualxtc 03.01.2014 / 05:09
2

Esta é uma adaptação de virtualxtc 's answer com suporte para alternar.

#!/bin/bash

current_mode="$(wmctrl -m | grep 'showing the desktop')"

if [[ "${current_mode##* }" == ON ]]; then
    wmctrl -k off
else
    wmctrl -k on
fi

Para usar, salve o arquivo acima em um arquivo e marque-o como executável.

Explicação do código acima

#!/bin/bash

Este é um comentário shebang.

current_mode="$(wmctrl -m | grep 'showing the desktop')"

Isso captura a saída de wmctrl -m canalizada através de grep 'showing the desktop' para a variável $current_mode .

if [[ "${current_mode##* }" == ON ]]; then
    wmctrl -k off
else
    wmctrl -k on
fi

Uma declaração if...else... no Bash. ${current_mode##* } retorna $current_mode com a correspondência mais longa de qualquer item até que um espaço seja excluído da frente da string. Se isso retornar ON , desativará a área de trabalho; mais transforma a área de trabalho em.

    
por kiri 03.01.2014 / 05:28