Chỉnh sửa gsinstall từ cron; thiếu biến môi trường
Nếu bạn chạy tập lệnh từ môi trường của riêng bạn (ví dụ từ cửa sổ đầu cuối hoặc từ Ứng dụng khởi động), một số biến môi trường sẽ được đặt. cron
tuy nhiên chạy tập lệnh của bạn với một tập hợp các biến môi trường hạn chế.
Để chỉnh sửa gsettings
thành công từ cron
, bạn cần đặt DBUS_SESSION_BUS_ADDRESS
biến môi trường. Bạn có thể làm điều đó bằng cách thêm hai dòng vào tập lệnh của bạn, như được mô tả ở đây (và bên dưới).
Tập lệnh của bạn, bao gồm thiết lập biến cần thiết
Tập lệnh từ đây , được chỉnh sửa để bao gồm DBUS_SESSION_BUS_ADDRESS
biến môi trường, sau đó trở thành:
#!/bin/bash
PID=$(pgrep gnome-session)
export DBUS_SESSION_BUS_ADDRESS=$(grep -z DBUS_SESSION_BUS_ADDRESS /proc/$PID/environ|cut -d= -f2-)
DIR="/home/indra/Pictures/wallpapers"
PIC=$(ls $DIR/* | shuf -n1)
gsettings set org.gnome.desktop.background picture-uri "file://$PIC"
Liên quan: Chạy .sh cứ sau 5 phút