それで、Mac OSの壁紙が時間の経過とともに変わるのをコピーしたいのです。
KDEでManjaroを使用する
次のコードは、与えられた画像パスを使用してKDEの壁紙を変更します。
qdbus org.kde.plasmashell /PlasmaShell org.kde.PlasmaShell.evaluateScript 'var allDesktops = desktops();print (allDesktops);for (i=0;i<allDesktops.length;i++) {d = allDesktops[i];d.wallpaperPlugin = "org.kde.image";d.currentConfigGroup = Array("Wallpaper", "org.kde.image", "General");d.writeConfig("Image", "<<<<PATH>>>>")}'
これは、複数の画像を使用する別の場所からコピーされました。このコードは端末で実行するだけで機能します。
だから5つを作り、壁紙をそれぞれの時間に変更したいと思います。
名前をnoon.sh Morning.shなどで指定します。
ファイルが生成され、必要な権限が付与されました。
chmod u+x <filename>
でも自分の作品を批判する人を手に入れた後
./noon.sh
私が知っている限り、特定の時間に予約されていないため、crontabは使用できません(間違っている可能性があります)。
これでファイルがあり、端末に./PATH/noon 11:00 |
これは機能し、与えられた時間内に壁紙を変更します。
これで、1時間ごとに壁紙を変更する24個のemを含む別のファイルが作成されました。
このように
#!/bin/sh
echo "./Documents/WallpaperScript/night.sh\n" | at 00:00
echo "./Documents/WallpaperScript/night.sh\n" | at 01:00
echo "./Documents/WallpaperScript/night.sh\n" | at 02:00
echo "./Documents/WallpaperScript/night.sh\n" | at 03:00
echo "./Documents/WallpaperScript/night.sh\n" | at 04:00
echo "./Documents/WallpaperScript/night.sh\n" | at 05:00
echo "./Documents/WallpaperScript/morning.sh\n" | at 06:00
echo "./Documents/WallpaperScript/morning.sh\n" | at 07:00
echo "./Documents/WallpaperScript/morning.sh\n" | at 08:00
echo "./Documents/WallpaperScript/noon.sh\n" | at 09:00
echo "./Documents/WallpaperScript/noon.sh\n" | at 10:00
echo "./Documents/WallpaperScript/noon.sh\n" | at 11:00
echo "./Documents/WallpaperScript/noon.sh\n" | at 12:00
echo "./Documents/WallpaperScript/noon.sh\n" | at 13:00
echo "./Documents/WallpaperScript/noon.sh\n" | at 14:00
echo "./Documents/WallpaperScript/noon.sh\n" | at 15:00
echo "./Documents/WallpaperScript/evening.sh\n" | at 16:00
echo "./Documents/WallpaperScript/evening.sh\n" | at 17:00
echo "./Documents/WallpaperScript/dusk.sh\n" | at 18:00
echo "./Documents/WallpaperScript/night.sh\n" | at 19:00
echo "./Documents/WallpaperScript/night.sh\n" | at 20:00
echo "./Documents/WallpaperScript/night.sh\n" | at 21:00
echo "./Documents/WallpaperScript/night.sh\n" | at 22:00
echo "./Documents/WallpaperScript/night.sh" | at 23:00
設定ページの助けを借りて
私はこれを起動スクリプトとして使用します
うまくいかないようです
しかし、コマンドを実行すると、atq
atプロセスがスケジュールされているという出力が表示されます。
しかし、うまくいきません
誰でも助けることができますか? :3
PS:私の英語力が不足して申し訳ありません。まだLinuxに初めて触れる人です。
ベストアンサー1
特定の時間に実行するようにcronを設定できます。たぶん秒や少数まで正確ではないかもしれませんが、実際に気づくことができますか?
私の提案は次のとおりです/etc/crontab
。
00 * * * * *user* /home/*user*/Documents/WallpaperScript/setWallpaper.sh
スクリプト内には、HH=$(date +%H)
現在の時刻や使用する画像などを知る変数があります。
cronはバックグラウンドで実行され、ディスプレイについて知らないため、まだcronを介して機能しません。
よく分からないけど似たような気がします。
DISPLAY=:0
に電話する前に追加してくださいqdbus
。
したがって、以下を実行する必要があります。
DISPLAY=:0 qdbus org.kde.plasmashell /PlasmaShell org.kde.PlasmaShell.evaluateScript 'var allDesktops = desktops(); print (allDesktops); for (i=0;i<allDesktops.length;i++) {d = allDesktops[i]; d.wallpaperPlugin = "org.kde.image"; d.currentConfigGroup = Array("Wallpaper", "org.kde.image", "General"); d.writeConfig("Image", "<<<<PATH>>>>")}'
ボーナスとして(私はcronで同じスクリプトを実行します)、ロック画面を同じ画像に設定することもできます。
DISPLAY=:0 kwriteconfig5 --file /home/*user*/.config/kscreenlockerrc --group Greeter --group Wallpaper --group org.kde.image --group General --key Image "file://<<<<PATH>>>>"