Команда для показа рабочего стола [дубликат]

Вы можете использовать about:memory. Но он выглядит не очень хорошо организованным, как Google Chrome. Возможно, расширение, такое как StatusbarEx.

EDIT 1

Пользователь запросил эту функцию пять месяцев назад в StatusbarEx . Цитируя ответ модератора, «Mozilla работает над этим через проект электролиза».

EDIT 1

Проект Электролиз был Электролиз проект ! Теперь Firefox также является многопроцессорным.

1
задан 3 January 2014 в 08:48

1 ответ

Это адаптация ответа virtualxtc с поддержкой переключения.

#!/bin/bash

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

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

Чтобы использовать, сохраните выше в файле, затем отметьте его исполняемым.

[!d4 ]

Объяснение выше кода

#!/bin/bash

Это комментарий shebang.

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

Это фиксирует вывод wmctrl -m, пропущенный через grep 'showing the desktop' в переменную $current_mode.

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

Инструкция if...else... в Bash. ${current_mode##* } возвращает $current_mode с самым длинным совпадением чего-либо вплоть до пробела, удаленного из передней части строки. Если это возвращает ON, отключается рабочий стол; еще отключается рабочий стол.

2
ответ дан 24 May 2018 в 13:26
  • 1
    Я тестировал его, но он всегда минимизирует и не восстанавливает. Возможно, wmctrl -k off работает неправильно или [[ "$current_mode" == ON ]] несовместим с ним. – user126106 3 January 2014 в 10:39
  • 2
    @MinimusHeximus Проблема может заключаться в том, что она не запускается с Bash и вместо этого запускается с sh. Смотрите мои правки. – kiri 3 January 2014 в 10:42
  • 3
    да, теперь это работает. Благодарю. – user126106 3 January 2014 в 10:46
  • 4
    @ minerz029 сладкий! можете ли вы указать мне на объяснение части ## *? Я предполагаю, что это заставляет его читать последнюю работу после строки grepped или что-то еще .... – virtualxtc 3 January 2014 в 11:00
  • 5
    @virtualxtc ${var##exp} возвращает $var с самым длинным совпадением exp, удаленным с передней стороны, где exp является глобальным glob. $var на самом деле не изменен. См. здесь для получения более подробной информации и других подобных конструкций. – kiri 3 January 2014 в 11:02

Другие вопросы по тегам:

Похожие вопросы: