среда, 12 декабря 2012 г.

GUI для sunxi-tools

Для редактирования конфигурационных файлов планшета Yeahpad А13 есть консольная утилита fexc. Я прикрутил к ней простой GUI на zenity. 


Скрипт:
  1. #!/bin/bash
  2. dir=`dirname $0` #путь к скрипту
  3. select=`zenity --list --radiolist
  4. --title="Работа с script.*"
  5. --text="Выберите способ конвертации:"
  6. --column="Отметка выбора" --column="Действие" --column="1"
  7. --print-column="3" --hide-column=3
  8. TRUE "bin -> text" "1" FALSE "text -> bin" "2"` #Выбор действия
  9. if [ "$select" != "" ]
  10. then
  11. open_path="$(zenity --file-selection)"
  12. if [ "$open_path" != "" ]
  13. then
  14. file_name=`echo ${open_path##*/}` #Имя файла с расширением
  15. ext=`echo ${file_name:(-3)}` #Расширение
  16. file_without_ext=`echo ${file_name%%.*}` #Имя файла без расширения
  17. path=`echo $open_path | sed -e 's/'$file_name'//g'` #
  18. else
  19. exit 0
  20. fi
  21. case $select in
  22. 1)
  23. if [ "$ext" == "bin" ]
  24. then
  25. cp $open_path $open_path".orig"
  26. save_path=$path$file_without_ext".ini"
  27. rm $save_path
  28. err=`$dir/fexc -I bin -O fex $open_path $save_path 2>&1`
  29. rm $open_path
  30. zenity --info --text="$err"
  31. else
  32. zenity --error --text="Неверный формат"
  33. fi
  34. ;;
  35. 2)
  36. if [ "$ext" == "ini" ]
  37. then
  38. save_path=$path$file_without_ext".bin"
  39. rm $save_path
  40. err=`$dir/fexc -I fex -O bin $open_path $save_path 2>&1`
  41. if [ "$err" == "" ]
  42. then
  43. save_path=$path$file_without_ext"0.bin"
  44. rm $save_path
  45. else
  46. zenity --error --text="$err"
  47. exit 0
  48. fi
  49. $dir/fexc -I fex -O bin $open_path $save_path
  50. zenity --info --text="Конвертация завершена успешно"
  51. else
  52. zenity --error --text="Неверный формат"
  53. fi
  54. ;;
  55. esac
  56. fi
И результаты работы:








 
Весь архив можно скачать здесь:
sunxi-tools-gui

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

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