Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: Быстрая панель запуска скриптов  (Прочитано 1161 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн ITicDigger

  • Автор темы
  • Любитель
  • *
  • Сообщений: 96
    • Просмотр профиля
Re: Быстрая панель запуска скриптов
« Ответ #30 : 10 Январь 2020, 09:14:40 »
#!/bin/sh
filename=`zenity --filename=/home/ --file-selection --title="Выбор файла для редактирования"`
case $? in
0)  nano "$filename" ;;
*)  zenity --info --text="Не выбрано имя файла" ;;
esac

(Вместо nano можно sh поставить - но осторожно)
Воу! А вот это весьма и весьма годно!
Только с тонкостями. Вот вариант для поставленной задачи работающий только с терминалом xfce4:
#!/bin/sh
filename=`zenity --filename=/my/scripts/ --file-selection --title="Запускай!"`
case $? in
0)  xfce4-terminal -e "$filename" ;;
*)  zenity --info --text="До скорых встречь!" ;;
esac
И вот почему такая некроссплатформенность: если запускать через sh то случается презабавнейший баг. Дело в том что половина моих скриптов - луперы (выполняют действие и останавливаются в ожидании нажатия на Enter, если нажал - выполняется ещё один раз) так вот при выполнении через sh случается многократное выполнение скрипта-лупера, буд-то на Enter нажали раз 30. Что ещё интереснее - такое же поведение наблюдается при запуске моих луперов через dmenu (мне на другом форуме поведали как ему мой каталог скриптов скормить).

Так же важно отметить необходимость "/" в конце " --filename=/my/scripts/" так как если её не поставить будет открыватсья родительский каталог а scripts будет выбран.

Всем спасибо! Удобная менюшка для запуска скриптов найдена! Тадам!
PS: хотя если найдёте удобнее и быстрее буду не против :)

Пользователь добавил сообщение 10 Январь 2020, 09:20:17:
Вот интересно на его скрипты посмотреть... если он сюда обращается с такой задачей, то они видимо не самописные.
К сожалению на 99% самописные. В основном всякая мелочёвка облегчающая жизнь при массовой установке пакетов (луперы для установки / удаления / копирования кэша апта / очисти кэша апта и т.д.) кой чего для ковыряния в проблемах с зависимостями, конверетеры частоиспользуемых единиц скорости передачи, упрощалки сложнозапоминаемых команд, управлялки iptables'ами, расширялки/сжималки лвм-томов, автомонтировалки расшар и многое многое другое полезное для меня и в основном бесполезное для остальных.
« Последнее редактирование: 10 Январь 2020, 09:20:17 от ITicDigger »

Оффлайн andytux

  • Старожил
  • *
  • Сообщений: 3196
    • Просмотр профиля
Re: Быстрая панель запуска скриптов
« Ответ #31 : 10 Январь 2020, 09:49:31 »
Цитировать
многое многое другое полезное для меня и в основном бесполезное для остальных
мелочёвка облегчающая жизнь

Оффлайн Виль

  • Новичок
  • *
  • Сообщений: 26
    • Просмотр профиля
Re: Быстрая панель запуска скриптов
« Ответ #32 : 12 Январь 2020, 22:44:44 »
У fbpanel и lxpanel конфиги текстовые, можно скриптом создавать конфиги панелей с вложенными папками с командами запуска скриптов и делать killall -USR1 fbpanel (рестарт панели для перечитывания конфига). Почему скриптом - не надо тогда заботится о числе скриптов и актуализации при появлении новых. Собирать через find все имена файлов.

Есть утилита dialog, её можно запускать из скрипта, набивая перед запуском списком сейчас существующих сриптов. В Диалоге отметить нужные для запуска. И на выходе из скрипта запустить.
Guake с хот-кием F1 помогает далеко не лазить за консолью.

 

Страница сгенерирована за 0.068 секунд. Запросов: 24.