Pull to refresh

Yandex Disk GUI для клиента под Linux

image

Я за собой заметил, что всё чаще стал пользоваться сервисами Яндекса.Одним из самых итересных является облачное хранилище данных Яндекс.Диск. Представленный нативный клиент очень хорош и гибок в управлении с одной оговоркой- он консольный.
Многих юзеров этот факт отпугнул, судя по отзывам в «Центре приложений» и в Блоге Яндекса.
Мои знакомые не стали исключением: «Ну вот, снова лезть в консоль!», «Я почти забыл о терминале, а тут опять» и т.д. и т.п.


Я немного погуглил, но гуёвины не нашел. Посидел-покумекал и(! не являясь программистом!) накидал пару скриптов, которые являются своего рода фронтэндом к консольному клиенту.
Для связи яндекс-клиента с пользователем я использовал стандартную утилиту Zenity- она выводит диалоги консоли в гуи.
Попытаемся разобраться.

1) Назначим переменные

ya="yandex-disk"
dstat=`$ya status | head -n1 | awk '{print($1)}'`


2) Проверим, запущен ли клиент.

Если да, то покажем окно с информацией.

if [ "$dstat" = "Статус" ]; then
ans=$(zenity  --list --cancel-label="Выход" --title "Yandex disk" --text "`yandex-disk status`
------------------------------------------------------------------------------------------------------------------------
Выберите действие:" --radiolist --hide-header --column "" --column "Варианты" FALSE "Расшарить файлы" FALSE "Закрыть доступ к файлам" FALSE "Остановить демон")

image

Если нет- предложим запустить

else
ans=$(zenity  --list --cancel-label="Выход" --ok-label="Запустить"  --title "Yandex disk" --text "Демон не запущен. Запустить?" --radiolist --hide-header --column "Выбор" --column "Параметр" TRUE "NORMAL" FALSE "ADVANCED");

image

Предложим ввод команд клиенту в ручном режиме

if [ "$ans" = ADVANCED ]; then
	$ya $(zenity --entry --title="Параметр запуска" --text="Введите параметр запуска yandex-disk. Например:" \
          --entry-text="start --read-only")

image

3) Напишем сценарий Nautilus для быстого расшаивания файлов

declare COUNT
for COUNT in $*
do
yandex-disk publish "$COUNT" | zenity --text-info --width 350  --title="Yandex disk | Публичная ссылка:"
done

Это позволит нам шарить в диск любой файл в один клик. Ссылка опять же выводится в окне.
image

Скачать и посмотреть можно ТУТ

З.Ы. Сильно не пинайте, лучше подскажите.
Tags:
Hubs:
You can’t comment this publication because its author is not yet a full member of the community. You will be able to contact the author only after he or she has been invited by someone in the community. Until then, author’s username will be hidden by an alias.