11 лютого, 2009

Bash+Zenity

Сталось диво :)
я вже писав про те, як сконструювати консольного клієнта під twitter але настав час GUI інтерфейсу до нього :)
#!/bin/bash
LANG=uk_UA.UTF-8 # Переведення локалі на unicode

POST=$(zenity --title "My Twitter bot" --entry --text "В Twitter:" --width 500) #Отримання даних

len=`echo "$POST" | wc -c` # визначення довжини тексту

if [ $len -gt  140 ]; then
zenity --error --text="Забагато символів, аж $len" # якщо більше ніж 140 символів 
POST=$(zenity --title "My Twitter bot" --entry --entry-text "$POST" 
--text "УВас $len символів, треба меньше:" --width 500) #то вертає на редагування       
fi

TEXT="$POST" #Можливо додання додатковий опцій у текст

curl --basic --user login:password --data status="$TEXT" 'http://twitter.com/statuses/update.xml' 
-o /dev/null | zenity --progress --title "Sending to Twitter" 
--text="$TEXT" --auto-kill --auto-close
#відправка повідомлення з прогресбаром та автозакриттям

zenity --info --title "Готово" --text "$TEXT - довжиною $len символів добавлений до вашого мікроблогу"
#вівід інформації, що повідомлення розміщене


Відносно Zenity приклади можна подивитись тут і тут
І взагалі багато можливостей для створення простих та будених дій на чудовому bash
Blogged with the Flock Browser

Немає коментарів: