Сайт | Скачать | Видео | Wiki

Автор Тема: Скрипт диалога с пользователем  (Прочитано 4367 раз)

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

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 7224
  • Репутация: +168/-2
  • Старый чайник
Re: Скрипт диалога с пользователем
« Ответ #15 : 27 Май 2019, 11:31:50 »
рождалось долго и в муках
Оно и видно. А если начать так?
Код
program=$1
$program &
msg_work &
pid_msg=$!
 while [ `pidof $program` ]; do sleep 1; done
kill pid_msg
msg_out
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150)
Netbook Acer 722 c6ckk (AMD C-50 Ontario, Radeon HD 6250)
Nettop Asus Eee Box PC B202 (Intel Atom N270, intel GMA 950)
Nettop Asus Eee Box PC EB1007 (Intel Atom D425, Intel GMA 3150)
Вопросы: DdShurick@jabber.ru

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 27218
  • Репутация: +184/-0
    • PuppyRus-A
Re: Скрипт диалога с пользователем
« Ответ #16 : 27 Май 2019, 11:48:28 »
вроде - если $program - скрипт, а не бинарник - не работает

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 7224
  • Репутация: +168/-2
  • Старый чайник
Re: Скрипт диалога с пользователем
« Ответ #17 : 27 Май 2019, 13:35:29 »
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150)
Netbook Acer 722 c6ckk (AMD C-50 Ontario, Radeon HD 6250)
Nettop Asus Eee Box PC B202 (Intel Atom N270, intel GMA 950)
Nettop Asus Eee Box PC EB1007 (Intel Atom D425, Intel GMA 3150)
Вопросы: DdShurick@jabber.ru

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 7224
  • Репутация: +168/-2
  • Старый чайник
Re: Скрипт диалога с пользователем
« Ответ #18 : 27 Май 2019, 19:28:12 »
 Вобщем вот:
создал скрипт prog
Код
#!/bin/sh
n=0
until [ $n = 10 ]; do echo -n .; n=`expr $n + 1`; sleep 1; done
скрипт msg_part
Код
#!/bin/sh
./prog &
pid_p=$!
echo $pid_p
echo `pidof prog`
export NTF='<window decorated="false">
<frame Инфо><hbox>
<pixmap>
<input file>./wait.gif</input>
</pixmap>
<text>
<label>Процесс пошёл, ждите отстоя пива.</label>
</text>
</hbox></frame>
</window>'
gtkdialog -G +250+50 --program=NTF &
pid_m=$!
echo $pid_m
while [ "$pid_p" = "`pidof prog`" ]; do sleep 1; done
echo выход
kill $pid_m
./msg -i -t 3 Финита ля комедиа!
Сработало как надо.
« Последнее редактирование: 27 Май 2019, 19:30:29 от DdShurick »
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150)
Netbook Acer 722 c6ckk (AMD C-50 Ontario, Radeon HD 6250)
Nettop Asus Eee Box PC B202 (Intel Atom N270, intel GMA 950)
Nettop Asus Eee Box PC EB1007 (Intel Atom D425, Intel GMA 3150)
Вопросы: DdShurick@jabber.ru

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 7224
  • Репутация: +168/-2
  • Старый чайник
Re: Скрипт диалога с пользователем
« Ответ #19 : 27 Май 2019, 21:28:38 »
 Собрал в модуль
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150)
Netbook Acer 722 c6ckk (AMD C-50 Ontario, Radeon HD 6250)
Nettop Asus Eee Box PC B202 (Intel Atom N270, intel GMA 950)
Nettop Asus Eee Box PC EB1007 (Intel Atom D425, Intel GMA 3150)
Вопросы: DdShurick@jabber.ru

Оффлайн k0l0p0k

  • Ветеран
  • *****
  • Сообщений: 1348
  • Репутация: +20/-1
Re: Скрипт диалога с пользователем
« Ответ #20 : 28 Май 2019, 00:45:53 »
wt ./prog отрабатывает как надо (prog Ваш тестовый скрипт )
./msg_part -s ./prog  окошко с часиками не появляется (
./propind -s /home/live/dev/yad/progress/prog   тоже самое (propind из  Msg.pfs )
грешу на while [ "$(pidof $prog | grep $pid_p)" ]; do sleep 1; done
цикл заканчивается, не начавшись, pidof не "находит" $prog

1.нетбук  Samsung N145 (оси: Debian+OLS, ddr01)
2.стационары(пеньки,2-8Gb,Radeon RX460,HD7850 ubuntu+openBox+LXPanel, PRA, ddr01)

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 7224
  • Репутация: +168/-2
  • Старый чайник
Re: Скрипт диалога с пользователем
« Ответ #21 : 28 Май 2019, 08:02:21 »
цикл заканчивается, не начавшись
Проверил, так и есть. Вчера работало. Мистика какая-то
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150)
Netbook Acer 722 c6ckk (AMD C-50 Ontario, Radeon HD 6250)
Nettop Asus Eee Box PC B202 (Intel Atom N270, intel GMA 950)
Nettop Asus Eee Box PC EB1007 (Intel Atom D425, Intel GMA 3150)
Вопросы: DdShurick@jabber.ru

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 27218
  • Репутация: +184/-0
    • PuppyRus-A
Re: Скрипт диалога с пользователем
« Ответ #22 : 28 Май 2019, 09:11:57 »
Мистика какая-то
С этим функционалом именно так. Самое интересное - когда начнете делать под нотификаторы разных ДЕ

Оффлайн k0l0p0k

  • Ветеран
  • *****
  • Сообщений: 1348
  • Репутация: +20/-1
Re: Скрипт диалога с пользователем
« Ответ #23 : 28 Май 2019, 11:41:01 »
Проверил, так и есть. Вчера работало. Мистика какая-то
как то было, из за каментов в скрипте что-то не работало,
пробелы вроде добавлял после камента - исправлялось.
или перед ??? точно не припомню уже подробностей
так что да - мистика случается иногда :)
но тут не из-за каментов, в чем то другом затык
« Последнее редактирование: 28 Май 2019, 11:42:59 от k0l0p0k »
1.нетбук  Samsung N145 (оси: Debian+OLS, ddr01)
2.стационары(пеньки,2-8Gb,Radeon RX460,HD7850 ubuntu+openBox+LXPanel, PRA, ddr01)

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 7224
  • Репутация: +168/-2
  • Старый чайник
Re: Скрипт диалога с пользователем
« Ответ #24 : 29 Май 2019, 21:01:46 »
Вчера работало.
Сегодня проверил, работает как часы. Ничего не менял, так как pfs
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150)
Netbook Acer 722 c6ckk (AMD C-50 Ontario, Radeon HD 6250)
Nettop Asus Eee Box PC B202 (Intel Atom N270, intel GMA 950)
Nettop Asus Eee Box PC EB1007 (Intel Atom D425, Intel GMA 3150)
Вопросы: DdShurick@jabber.ru

Оффлайн k0l0p0k

  • Ветеран
  • *****
  • Сообщений: 1348
  • Репутация: +20/-1
Re: Скрипт диалога с пользователем
« Ответ #25 : 29 Май 2019, 22:24:33 »
вот с этим заработало:
while [ "$(ps -e | grep `basename $prog`)" ]; do sleep 1; done

по Вашему не желает
while [ "$(pidof $prog | grep $pid_p)" ]; do sleep 1; done

запускаю у себя ./prog
в соседней вкладке pidof ./prog выдает пустую строку
видимо причина в этом
« Последнее редактирование: 29 Май 2019, 22:28:53 от k0l0p0k »
1.нетбук  Samsung N145 (оси: Debian+OLS, ddr01)
2.стационары(пеньки,2-8Gb,Radeon RX460,HD7850 ubuntu+openBox+LXPanel, PRA, ddr01)

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 7224
  • Репутация: +168/-2
  • Старый чайник
Re: Скрипт диалога с пользователем
« Ответ #26 : 30 Май 2019, 08:47:45 »
видимо причина в этом
Да.
Код
# pidof seamonkey
927
# pidof /usr/bin/seamonkey
#
# pidof `basename /usr/bin/seamonkey`
927
Поправка принимается.
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150)
Netbook Acer 722 c6ckk (AMD C-50 Ontario, Radeon HD 6250)
Nettop Asus Eee Box PC B202 (Intel Atom N270, intel GMA 950)
Nettop Asus Eee Box PC EB1007 (Intel Atom D425, Intel GMA 3150)
Вопросы: DdShurick@jabber.ru

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 27218
  • Репутация: +184/-0
    • PuppyRus-A
Re: Скрипт диалога с пользователем
« Ответ #27 : 31 Май 2019, 12:56:10 »
Собрал в модуль
1. msg -i -t 3 - выводит -t в сообщение
2. Всплывающее на yad gtkdialog - зло. Фокус переносится на сообщение. Т.е. "вырываете из рук"
Только нотификаторы ДЕ или xcowsay

propind - возможно идеи с pidof пригодятся

В остальном до ntf очень далеко
Не тратьте время. Берите ntf и давайте чистить и доводить
Функционал и ключи нужны как в ntf - иначе переписывать кучу скриптов

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 7224
  • Репутация: +168/-2
  • Старый чайник
Re: Скрипт диалога с пользователем
« Ответ #28 : 31 Май 2019, 13:28:08 »
msg -i -t 3 - выводит -t в сообщение
Что интересно, только в pra, в Richy нет.
Фокус переносится на сообщение. Т.е. "вырываете из рук"
Да. Тогда эту затею надо бросать.
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150)
Netbook Acer 722 c6ckk (AMD C-50 Ontario, Radeon HD 6250)
Nettop Asus Eee Box PC B202 (Intel Atom N270, intel GMA 950)
Nettop Asus Eee Box PC EB1007 (Intel Atom D425, Intel GMA 3150)
Вопросы: DdShurick@jabber.ru

Оффлайн k0l0p0k

  • Ветеран
  • *****
  • Сообщений: 1348
  • Репутация: +20/-1
Re: Скрипт диалога с пользователем
« Ответ #29 : 31 Май 2019, 13:32:59 »
Не тратьте время.
я просто тренируюсь :) уровень скрипто-писательства приподнять свой
1.нетбук  Samsung N145 (оси: Debian+OLS, ddr01)
2.стационары(пеньки,2-8Gb,Radeon RX460,HD7850 ubuntu+openBox+LXPanel, PRA, ddr01)