Как я могу предотвратить людей для наблюдения, какое приложение я открыл?

Я не хочу, чтобы люди видели, какие приложения я открыл. Я хотел бы смочь немедленно скрыть окна с комбинацией сочетания клавиш, таким образом, я могу сохранить свою работу впоследствии. Я также хочу скрыть их присутствие в Средстве запуска.

Я попробовал к duckduckgo его, но не нашел решения.

1
задан 5 February 2015 в 00:11

1 ответ

ВАЖНОЕ РЕДАКТИРОВАНИЕ

С командами:

xdotool windowunmap <window_id>

и

xdotool windowmap <window_id>

это поворачивается, там путь к, полностью маскируют присутствие окон приложения временно. Даже wmctrl -l команда не будет больше перечислять окна.

Я отправлю новый ответ ниже и оставлю первый ответ как вторую опцию.


Новый ответ:

При сокрытии окон и приложений они принадлежат

Со сценарием ниже, можно полностью скрыться (не отображают) окна приложения от рабочего стола. Их присутствие не будет видимо вообще, так как их значки Launcher не покажут стрелку также.

Как использовать:

  • Для сценария нужны оба wmctrl и xdotool для получения свойств окна pid, они принадлежат и управлять окнами выбранных приложений:

    sudo apt-get install wmctrl
    sudo apt-get install xdotool
    
  • Скопируйте сценарий ниже в пустой файл

  • В главном разделе сценария перечислите приложения, к которым Вы хотели бы (смочь к), быстро скрывают окна. Используйте формат:

    applications = ["firefox", "gedit"]
    
  • Сохраните его как hide_windows.py

  • Сделайте сценарий выполненным из shortut ключа: Выберите: Параметры настройки системы> "Клавиатура"> "Ярлыки"> "Пользовательские Ярлыки". Нажмите "+" и добавьте команду:

    python3 /path/to/hide_windows.py
    
  • Теперь при нажатии сочетания клавиш однажды окна определенных приложений будут полностью скрыты, их значок средства запуска не покажет выполнение приложения.

  • Нажмите снова, и все окна появятся снова.

Сценарий:

#!/usr/bin/env python3
import subprocess
import getpass
import os

#---
applications = ["chrome", "firefox", "gedit"]
#---

windowlist = os.environ["HOME"]+"/"+".windowlist.txt"
user = getpass.getuser()

get = lambda x: subprocess.check_output(["/bin/bash", "-c", x]).decode("utf-8")
wlist = [l for l in get("wmctrl -lp").splitlines()]
procs = sum([[p.split()[0] for p in get("ps -u "+user).splitlines() if app in p] for app in applications], [])
matches = sum([[l.split()[0] for l in wlist if p in l] for p in procs], [])

if len(matches) != 0:
    with open(windowlist, "wt") as out:
        for match in matches:
            out.write(match+"\n")
            subprocess.Popen(["/bin/bash", "-c", "xdotool windowunmap "+match])
else:
    try:
        with open(windowlist) as r:
            for l in r.readlines():
                subprocess.Popen(["/bin/bash", "-c", "xdotool windowmap "+l])
        os.remove(windowlist)
    except FileNotFoundError:
        pass

Как это работает

При вызове сценарий перечисляет все окна из приложений, установленных в заголовке сценария. Впоследствии, это делает две вещи:

  • Это пишет идентификатор окна окон к скрытому файлу (чтобы смочь повторно отобразить окна, так как они даже исчезают из вывода wmctrl -l)

    enter image description here

  • Это не отображает окна

  • При вызове снова сценарий не найдет, что любые окна не отображаются, он считает файл с идентификаторами окна и восстановит окна.

    enter image description here




Первый ответ:

(Совершенно рабочий, но другой подход и немного больше работы)

Сокрытие открытых приложений от Средства запуска?

Я сомневаюсь, возможно ли полностью стереть все трассировки приложения в Единице и Средстве запуска. По крайней мере, не посредством простых модификаций, так как Средство запуска разработано для проявления представления приложений GUI.

Если Ваша цель состоит в том, чтобы однако предотвратить людей для наблюдения, какие приложения Вы в настоящее время имеете открытый, который может быть сделан простыми модификациями.

Комбинация двух вещей, которые могут легко быть сделаны

Решение, которое я предложил бы, существует двух мер:

  1. Вводящий в заблуждение represenation приложения в средстве запуска

    Мое измененное представление Firefox в средстве запуска:

    <image1>

    Можно просто изменить и появляющееся имя и значок к чему-либо, что Вы любите.

  2. Ключевой ярлык для мгновенного сокрытия окон определенного приложения (приложений).

    Это может быть большим количеством окон, они будут все минимизированы в одном действии (сочетание клавиш)

Объединенный, эти две меры должны сделать то, что Вы хотите: предотвратите людей для распознавания, какие приложения Вы запускаете.

Как настроить

1. Вводящий в заблуждение represenation приложения в средстве запуска

(Я буду использовать пример Firefox),

Меняя появляющееся имя:

  • Приложения представлены .desktop файлы в /usr/share/applications или ~/.local/share/applications.
    Мы должны отредактировать локальную копию firefox.desktop файл, поэтому первая копия это:

    cp /usr/share/applications/firefox.desktop ~/.local/share/applications/firefox.desktop
    
  • Откройте файл в gedit (перетащите файл по открытому gedit окно или выполненный:

    gedit ~/.local/share/applications/firefox.desktop
    
  • Теперь мы собираемся изменить имя Firefox, как это появляется в Средстве запуска:
    Прямо ниже первых двух строк, Вы будете видеть впечатляющий список локализованных имен. Ищите языковой тег, соответствуя языку Вашей системы. Я голландец, таким образом, я должен изменить имя в строке:

    Name[nl]=Firefox webbrowser
    

    и я изменяю его в:

    Name[nl]=Monkey eats banana
    

    Изменение появляющегося значка:

  • В то время как .desktop файл все еще открыт, Ищите строку:

    Icon=firefox
    

    Замените его:

    Icon=/path/to/icon.png
    

    (При замене его собственным значком необходимо будет, вероятно, использовать полный путь для значка.)

    После входа/в, Firefox появится, поскольку "Обезьяна ест банан" в обоих Средство запуска и Тире, но Вы все еще найдете его как firefox также:

    enter image description here

2. Ключевая комбинация ярлыка для сокрытия окон определенного приложения (приложений)

  • Для сценария нужны оба wmctrl и xdotool для получения свойств окна pid, они принадлежат и управлять окнами выбранных приложений:

    sudo apt-get install wmctrl
    sudo apt-get install xdotool
    
  • Скопируйте сценарий ниже в пустой файл

  • В главном разделе сценария перечислите приложения, к которым Вы хотели бы (смочь к), быстро скрывают окна. Используйте формат:

    applications = ["firefox", "gedit"]
    
  • Сохраните его, hide_windows.py

  • Сделайте сценарий выполненным из shortut ключа: Выберите: Параметры настройки системы> "Клавиатура"> "Ярлыки"> "Пользовательские Ярлыки". Нажмите "+" и добавьте команду:

    python3 /path/to/hide_windows.py
    

    Теперь протестируйте его путем запуска приложений и нажмите сочетание клавиш. Окна определенных приложений минимизируют, их значок средства запуска является загадкой.

    Сценарий

    #!/usr/bin/env python3
    import subprocess
    import getpass
    
    #---
    applications = ["firefox", "gedit"]
    #---
    
    get = lambda x: subprocess.check_output(["/bin/bash", "-c", x]).decode("utf-8")
    wlist = [l for l in get("wmctrl -lp").splitlines()]
    user = getpass.getuser()
    procs = sum([[p.split()[0] for p in get("ps -u "+user).splitlines() if app in p] for app in applications], [])
    for match in sum([[l.split()[0] for l in wlist if p in l] for p in procs], []):
        subprocess.Popen(["/bin/bash", "-c", "xdotool windowminimize "+match])
    
4
ответ дан 3 December 2019 в 07:03

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

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