GNU/Linux -- это интересно

Imgur Bash Script Uploader + GUI

Рубрика: Интернет ПО -> Графика
Метки: | | | |
Понедельник, 30 января 2012 г.
Просмотров: 444
Подписаться на комментарии по RSS

Bash скрипт + GUI для загрузки изображений на Imgur.com

Bash Script Uploader (imgur script) — официальный Bash скрипт (сценарий) для хостинга изображений Imgur.com от Барта Нагеля (Bart Nagel).

Bash — это усовершенствованная и модернизированная вариация командной оболочки Bourne spell, являющаяся одной из наиболее популярных современных разновидностей командной оболочки UNIX (наиболее часто используется в среде Linux, в качестве предустановленной командной оболочки).

Но повседневное использование Bash скриптов не всегда (и не всем) может оказаться удобным, поэтому для них очень часто пишутся графические интерфейсы (GUI).

Пример такого интерфейса Yad GUI для Bash Script Uploader (автор Stu90):

#!/bin/bash 
###GUI for imgur script by Bart Nagel <bart@tremby.net>### 
###upload local image to www.imgur.com image hosting service### 
##Stu90### 
# 
  ### root password for user fido ### 
  [ "`whoami`" != "root" ] && exec sudo -A ${0} ${@} 
TEXT=" Select an image to upload to www.imgur.com " 
NAME="Imgur upload" 
VER="0.1" 
GUI1=$(yad --title="$NAME $VER" --text="$TEXT" --form --field="Image:FL" --button="gtk-quit:1" --button="gtk-ok:0") 
BUTTON=$? 
   if [ "$GUI1" = "" ]; then 
   echo "Exiting" && exit 
   fi 
case $BUTTON in 
0) 
GETIMG="`echo $GUI1 | cut -d '|' -f 1`" 
echo "$GETIMG" 
# API Key provided by Alan@imgur.com 
apikey="b3625162d3418ac51a9ee805b1840452" 
# upload the image 
response=$(curl -F "key=$apikey" -H "Expect: " -F "image=@$GETIMG" \ 
        http://imgur.com/api/upload.xml 2>/dev/null) 
# the "Expect: " header is to get around a problem when using this through the 
# Squid proxy. Not sure if it's a Squid bug or what. 
if [ $? -ne 0 ]; then 
        echo "Upload failed" >&2 
        exit 2 
elif [ $(echo $response | grep -c "<error_msg>") -gt 0 ]; then 
        echo "Error message from imgur:" >&2 
        echo $response | sed -r 's/.*<error_msg>(.*)<\/error_msg>.*/\1/' >&2 
        exit 3 
fi 
# parse the response and output our stuff 
url=$(echo $response | sed -r 's/.*<original_image>(.*)<\/original_image>.*/\1/') 
deleteurl=$(echo $response | sed -r 's/.*<delete_page>(.*)<\/delete_page>.*/\1/') 
echo $url 
echo "Delete page: $deleteurl" >&2 
##thumb nail image## 
url1="` echo $url |  cut -d "." -f -3 `" 
format="` echo $url |  cut -d "." -f 4- `" 
urlthumb="$url1"l."$format" 
##imge links gui## 
GUI2=$(yad --title="$NAME $VER" --text=" Cut and paste one of the image options from the boxes below " --form \ 
--field="Forum Thumb" "[IMG]$urlthumb[/IMG]" \ 
--field="Forum Full" "[IMG]$url[/IMG]" \ 
--field="Direct URL" "$url" \ 
--field="Delete page" "$deleteurl" \ 
--button="gtk-quit") 
   if [ "$GUI2" = "" ]; then 
   echo "Exiting" && exit 
   fi 
;; 
    
1) 
    echo "Quit selected - Exiting" && exit 
;; 
esac

Графические диалоги для Imgur Uploader основаны на использовании Yad, это улучшенный вариант Zenity (graphical dialog boxes from shell scripts), а для использования достаточно сохранить его под любым именем (например imgurbashgui), сделать его "исполняемым" (в свойствах файла) и положить в:

/usr/bin/ или /root/my-applications/bin/

Из диалогов Yad GUI Imgur Uploader можно более удобно скопировать ссылки на изображения для вставки на форум, блог, отправки по электронной почте и пр...

Imgur Service Menu ещё один модифицированный скрипт для хостинга изображений Imgur.com, являющийся форком Bash Script Uploader, созданным для более простого использования его возможностей и более тесной интеграции с KDE (а именно для Kubuntu).

После установки Imgur Service Menu интегрируется в контекстное меню файловых менеджеров Dolphin, Konqueror и Krusader (а так же интегрируется и с большинством других файловых менеджеров, таких как Nautilus, Thunar, PCManFM и пр...).

Изображение открытое из Imgur Service Menu загружается на Imgur.com, о процессе извещают полупрозрачные всплывающие диалоги, а ссылка на загруженное изображение автоматически копируется в буфер обмена...

Так же вся история загрузок сохраняется в текстовом файле: ~/.imgur_history

Автор: posixru, xmpp: xmpp
Добавить страницу в закладки:
twitter.com facebook.com vkontakte.ru odnoklassniki.ru mail.ru ya.ru rutvit.ru myspace.com technorati.com digg.com friendfeed.com pikabu.ru blogger.com liveinternet.ru livejournal.ru memori.ru google.com bobrdobr.ru mister-wong.ru yahoo.com yandex.ru del.icio.us
Оставьте комментарий!
Используйте нормальные имена.
Если вы уже зарегистрированы как комментатор или хотите зарегистрироваться, укажите пароль и свой действующий email.
(При регистрации на указанный адрес придет письмо с кодом активации и ссылкой на ваш персональный аккаунт, где вы сможете изменить свои данные, включая адрес сайта, ник, описание, контакты и т.д.)




Войти через loginza

 
captcha