我将不得不检查其他版本,但是在14.04和15.10上,gsettings
用于检查隐藏文件的可见性的命令是:
gsettings get org.gtk.Settings.FileChooser show-hidden
1.(重新)设置值的脚本为:
#!/usr/bin/env python3
import subprocess
import sys
import time
interval = int(sys.argv[1])
key = "org.gtk.Settings.FileChooser"
val = "show-hidden"
while True:
time.sleep(interval)
subprocess.Popen(["gsettings", "set", key, val, "false"])
要运行它:
将其添加到启动应用程序
要将其添加到启动应用程序:破折号>启动应用程序>添加。添加命令:
python3 /path/to/reset_hidden.py <interval>
2.从cron运行命令
如果您希望从cron而不是后台脚本运行命令,则不会设置重要的环境变量:
DBUS_SESSION_BUS_ADDRESS
只有先设置变量,才能从cron编辑/设置gsettings。
如果要从cron运行它,请使cron运行以下脚本:
#!/bin/bash
PID=$(pgrep gnome-session)
export DBUS_SESSION_BUS_ADDRESS=$(grep -z DBUS_SESSION_BUS_ADDRESS /proc/$PID/environ|cut -d= -f2-)
gsettings set org.gtk.Settings.FileChooser show-hidden false
3.更优雅地利用空闲时间
如果您在计算机上工作,则可能不想在工作时意外隐藏文件。
使用以下脚本,文件将在任意空闲时间后被隐藏。设置与之完全相同,[1]
但是<interval>
现在是<idle_time>
(再次)隐藏文件之前的时间(以秒为单位)。
该脚本需要xprintidle
:
sudo apt-get install xprintidle
剧本
#!/usr/bin/env python3
import subprocess
import sys
import time
interval = int(sys.argv[1])
key = "org.gtk.Settings.FileChooser"
val = "show-hidden"
idle1 = 0
while True:
time.sleep(2)
idle2 = int(subprocess.check_output(["xprintidle"]).decode("utf-8").strip())/1000
if all([idle1 <= interval, idle2 >= interval]):
subprocess.Popen(["gsettings", "set", key, val, "false"])
idle1 = idle2