Как узнать имя файла текущего рисунка рабочего стола kde 4? [РЕШЕНО]

Изображение пользователя nayk.

Нужно в скрипте bash использовать полный путь файла рисунка рабочего стола. Какой командой можно его получить?
В kde3 была команда:
dcop kdesktop KBackgroundIface currentWallpaper 1
А в kde4 что-то не соображу как сделать.

0
Soi-Fong - 23 Март, 2009 - 15:10
Изображение пользователя Soi-Fong.

cat ~/.kde/share/config/plasma-appletsrc | grep -oP '(?<=userswallpapers=).*(?=,)'
Так пойдет?

0
nayk - 23 Март, 2009 - 17:29
Изображение пользователя nayk.

Не совсем то что нужно, но направление правильное, спасибо за наводку. Как раз в этом файле есть параметр "wallpaper" - содержит то что нужно. Но такой параметр присутствут в двух секциях. т.е. если изменить команду так:
cat ~/.kde/share/config/plasma-appletsrc | grep -oP '(?<=wallpaper=).*'
то выводит две строки. Нужная мне строка в секции "[Containments][1][Wallpapers][image]".

0
nayk - 23 Март, 2009 - 21:07
Изображение пользователя nayk.

Вот такая конструкция работает:
grep 'wallpaper=' ~/.kde/share/config/plasma-appletsrc | tail --lines=1 | sed 's/wallpaper=//'

Еще раз спасибо за помощь.

0
Soi-Fong - 24 Март, 2009 - 01:34
Изображение пользователя Soi-Fong.

Видимо, я не докурил этот файлик )

0
Walter oDim - 25 Март, 2009 - 16:14
Изображение пользователя Walter oDim.

dcop kdesktop KBackgroundIface currentWallpaper 1

Рано или поздно подобная функция будет добавлена в DBus-интерфейс плазмы, а грепать конфиг - некошерный способ, т.к. в следующих версиях и имя конфига и имя опции могут измениться.

Отправить комментарий

CAPTCHA на основе изображений
Введите цифры