20 окт. 2013 г.

Расшаривание файлов при помощи dropbox в один клик

Очень часто необходимо поделится файлом с группой людей, но передавать их через IM очень неудобно.

Данное решение навеяно хабрапостом но с небольшими изменениями:
  • вместо perl используется родной bash
  • т.к. dropbox у меня не стартует автоматически - добавлена проверка и запуск оного, коли требуется.
  • добавлена возможность копирования каталогов
Как результат: скрипт:
#!/bin/sh
DPDIR='/home/rym/Dropbox/Public'
dropbox running
if [ $? -eq 0 ]
then
dropbox start > /dev/null
fi
if [ $# -ge 1 ]
then
if [ -r $1 ]
then
if [ -f $1 ]
then
FILE=`basename $1`
if [ `file -b --mime-type $1 | grep -c 'image/'` -eq 1 ]
then
FILE=$FILE'.png'
convert $1 -auto-orient -background transparent -format png -resize 1440x900^ $TMPDIR'/'$FILE >> /dev/null
DPDIR=$DPDIR'/Pictures'
if [ ! -d $DPDIR ]
then
mkdir $DPDIR
fi
set $TMPDIR'/'$FILE
fi
elif [ -d $1 ]
then
FILE=`dirname $1`
fi
cp -fpR $1 $DPDIR'/'
LINK=`dropbox puburl $DPDIR'/'$FILE`
kdialog --passivepopup 'URL copied to clipboard:\n'$LINK 3 --title 'Dropbox'
echo $LINK | xsel -b -i
exit 0
fi
else
kdialog --error 'Select a file'
exit 1
fi
view raw db.sh hosted with ❤ by GitHub

(необходимо заменить путь к public папке dropbox, а также установить xsel)
Далее - необходимо скопировать скрипт в ~/bin и добавить в меню в любимом ФМ - в моем случае krusader:

Комментариев нет: