ฉันจะต้องตรวจสอบรุ่นอื่น ๆ แต่ใน 14.04 และ 15.10 gsettings
คำสั่งเพื่อตรวจสอบการมองเห็นของไฟล์ที่ซ่อนอยู่คือ:
gsettings get org.gtk.Settings.FileChooser show-hidden
วิธีตั้งค่าเป็นfalse
(ไม่แสดงไฟล์ที่ซ่อน):
gsettings set org.gtk.Settings.FileChooser show-hidden false
หรือtrue
:
gsettings set org.gtk.Settings.FileChooser show-hidden true
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"])
วิธีเรียกใช้:
- คัดลอกสคริปต์ไปยังไฟล์เปล่าบันทึกเป็น
reset_hidden.py
เรียกใช้โดยคำสั่ง:
python3 /path/to/reset_hidden.py <interval>
โดยที่ช่วงเวลาเป็นวินาทีเช่น
python3 /path/to/reset_hidden.py 600
เพิ่มไปยังแอปพลิเคชันเริ่มต้น
ในการเพิ่มไปยังแอปพลิเคชันเริ่มต้น: Dash> แอปพลิเคชันเริ่มต้น> เพิ่ม เพิ่มคำสั่ง:
python3 /path/to/reset_hidden.py <interval>
2. รันคำสั่งจาก cron
หากคุณต้องการเรียกใช้คำสั่งจาก cron แทนสคริปต์พื้นหลังตัวแปรสภาพแวดล้อมที่สำคัญจะไม่ถูกตั้งค่า:
DBUS_SESSION_BUS_ADDRESS
การแก้ไข / การตั้งค่า gsettings จาก cron ทำงานเฉพาะถ้าคุณตั้งค่าตัวแปรแรก
หากคุณต้องการเรียกใช้จาก 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