Итак, чтобы скрыть некоторые файлы и папки для неопытных глаз, я изменил их имена, поставив точку в начале имени. Это работает, а файлы скрыты. Любопытные люди, которые неопытны, не увидят их. А с помощью Nautilus я включаю и выключаю «показывать скрытые файлы» с помощью комбинации клавиш Ctrl- H. Хорошо. Но тогда я никогда не узнаю, включаю ли я эту функцию
Я хотел бы написать скрипт bash, который автоматически запускается каждые, скажем, через 10 минут, и отключает функцию «показывать скрытые файлы». Так что я был бы уверен, что любопытные глаза никогда не увидят скрытые файлы. Теперь проблема в том, что:
- Я не знаю, какую инструкцию bash использовать, если она есть. Я уверен, что bash-скрипты могут делать практически все, поэтому, пожалуйста, помогите!
- Я не знаю, как автоматически запускать скрипт bash каждые XX секунд или минут.
Как это сделать?
Ответы:
Вы можете использовать
gsettings
для доступа к ответственному параметру вdconf
реестре легко из командной строки.Параметр отображения скрытых файлов (имена которых начинаются с
.
) находится в схемеorg.gtk.Settings.FileChooser
и вызываетсяshow-hidden
.Допустимые значения: либо
true
(показать скрытые файлы), либоfalse
(не показывать их).Итак, вот команды для включения или отключения отображения скрытых файлов:
Чтобы автоматически запускать эту команду каждые x минут, есть два полезных ресурса, чтобы узнать, как этого добиться:
Использование
cron
(минимальное разрешение - 1 минута): help.ubuntu.com: Cron How-toОбратите внимание, что
cron
запускаются задачи с очень ограниченным наборомenv
переменных, которые не включаютDBUS_SESSION_BUS_ADDRESS
, но это необходимо дляgsettings
работы. Поэтому мы должны сами позаботиться об установке этой переменной в скрипте, который мы запускаем, если нам это нужноЯ подготовил сценарий для вас (с помощью @JacobVlijm который связал меня этот ответ на переполнение стека по @Radu Rădeanu ) , который заботится об этой проблеме и может быть запущена непосредственно
cron
:Без использования
cron
: Как выполнять команду каждые 10 секунд (без cron)?источник
DBUS_SESSION_BUS_ADDRESS
переменную окружения, чтобы заставить редактирование работать.Я должен буду проверить другие выпуски, но 14.04 и 15.10
gsettings
команда для проверки видимости скрытых файлов:Чтобы установить значение
false
(не показывать скрытые файлы):или
true
:1. Сценарий для (пере) установки значения затем:
Чтобы запустить это:
reset_hidden.py
запустите его командой:
где временной интервал в секундах, например
Добавьте его в автозагрузку приложений
Чтобы добавить его в Startup Applications: Dash> Startup Applications> Add. Добавьте команду:
2. Запустите команду из cron
Если вы предпочитаете запускать команду из cron вместо фонового скрипта, важная переменная среды не устанавливается:
Редактирование / установка настроек из cron работает только при первой установке переменной .
Если вы хотите запустить его из cron, сделайте так, чтобы cron запустил следующий скрипт:
3. Более элегантно, используя простой
Если вы работаете на своем компьютере, вам, вероятно, не хотелось бы, чтобы файлы неожиданно скрывались во время работы.
Используя приведенный ниже скрипт, файлы будут скрыты после произвольного простоя. Настройка точно такая же,
[1]
но<interval>
время теперь<idle_time>
(в секундах), прежде чем файлы должны скрыться (снова).Скрипт нуждается в
xprintidle
:Сценарий
источник
gconftool-2
дляnautilus-file-management-properties
manpage: http://manpages.ubuntu.com/manpages/hardy/man1/gconftool-2.1.htmlcrontab -e
для вашего графика. man-страница: https://help.ubuntu.com/community/CronHowtoисточник
gconf
устарела и больше не используется по крайней мере Наутилусом. В моей системе 15.10 ваши настройки больше не доступны. Также вы должны описать шаги более четко, а не просто давать подсказки.