Форум программистов, компьютерный форум, киберфорум
Ubuntu, Mint Linux
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.54/46: Рейтинг темы: голосов - 46, средняя оценка - 4.54
 Аватар для ushim
179 / 180 / 55
Регистрация: 01.06.2011
Сообщений: 507

Ожидание нажатия клавиши (sh скрипт)

15.07.2012, 12:20. Показов 9891. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток.
У меня появилась необходимость запускать скрипт при старте ОС. Добавил исполняемые команды в /etc/rc.local, но проблема в том, что скрипт отключает некоторые устройства, когда к ним обращается ещё что-то, из-за этого зависает ОСь, проблему решил командой sleep 15 перед всем этим чудом. Но теперь хочу, чтобы скрипт выполнялся после нажатия на любую клавишу, некий while (keydown). Помогите, пожалуйста.
Спасибо.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
15.07.2012, 12:20
Ответы с готовыми решениями:

Ожидание нажатия клавиши
А подскажите пожалуйста, как в С++ сделать так, чтобы программа, написанная в консольных приложениях, продолжала свою работу только после...

Ожидание нажатия клавиши
У меня ниже представлен код. Как сделать что б на указанном участке прорамма приостановилась и ждала нажатия клавиши для дальнейшего...

Ожидание нажатия клавиши в jTextField
Хочу реализовать такую штуку: в поле jTextArea задается вопрос, например: "Введите имя", затем нужно перейти в jTextField, ввести имя...

13
Эксперт по компьютерным сетямЭксперт NIX
 Аватар для Dmitry
13440 / 7534 / 830
Регистрация: 09.09.2009
Сообщений: 29,554
15.07.2012, 13:35
не получится
скрипт из rc.local выполняется при старте автоматически
его ввод/вывод вам не доступны
поэтому где, кто и как будет нажимать ту кнопку - хз.
в итоге вы получите просто тупо воткнувшуюся систему, потому как загрузка будет стоять и ждать, когда наконец завершится выполнение скрипта rc.local, а скрипт будет висеть и ждать пока кто-то нажмет кнопку, неясно где и как...
0
 Аватар для ushim
179 / 180 / 55
Регистрация: 01.06.2011
Сообщений: 507
15.07.2012, 15:36  [ТС]
Dmitry, а что посоветуете вообще? Просто выполнение rc.local вешает систему из-за конфликтов, приходится ждать.
0
Эксперт по компьютерным сетямЭксперт NIX
 Аватар для Dmitry
13440 / 7534 / 830
Регистрация: 09.09.2009
Сообщений: 29,554
15.07.2012, 15:49
я вам ваш скрипт предлагал вписать в кронтаб, но вы почему-то пошли в rc.local

и вообще, зачем вы в фапйл (тот-же rc.local) пишите всю вашу пачку команд?
создайте скрипт, назовите его например run_me.sh
Впишите в него последовательно все вашии команды типа так:
Bash
1
2
3
4
5
6
#!/bin/sh
команда1
команда2
....
....
команда132
сохраните его, присвойте ему бит исполнения, и вызывайте уже его - скрипт run_me.sh

Но повторюсь, чтоб система не ждала, пишите в кронтаб
и кстати, в этот ваш скрипт вы можете тогда безболезненно вставить любую желаемую паузу (sleep)...
0
202 / 44 / 2
Регистрация: 19.03.2012
Сообщений: 283
15.07.2012, 16:15
как ему поможет cron? если туда поместить то скрипт будет выполняться через определенные промежутки времени а не при включении.
0
Эксперт по компьютерным сетямЭксперт NIX
 Аватар для Dmitry
13440 / 7534 / 830
Регистрация: 09.09.2009
Сообщений: 29,554
15.07.2012, 16:20
toxin, а ты погугли
https://www.google.ru/?q=cron+@reboot
или man почитай
0
202 / 44 / 2
Регистрация: 19.03.2012
Сообщений: 283
15.07.2012, 16:38
Сейчас почитал пишут, что строка вида @reboot script.sh означает выполнять скрипт при перезагрузке
0
Эксперт по компьютерным сетямЭксперт NIX
 Аватар для Dmitry
13440 / 7534 / 830
Регистрация: 09.09.2009
Сообщений: 29,554
15.07.2012, 16:51
ну и?...
0
202 / 44 / 2
Регистрация: 19.03.2012
Сообщений: 283
15.07.2012, 16:55
Ну выполнять при перезагрузке это не одно и тоже, что выполнять после перезагрузки.
0
Эксперт по компьютерным сетямЭксперт NIX
 Аватар для Dmitry
13440 / 7534 / 830
Регистрация: 09.09.2009
Сообщений: 29,554
15.07.2012, 17:12
сам-то понял, что сказал?

еще раз предлагаю прочесть ман, например даже на русском:
http://www.opennet.ru/man.shtm... &russian=0
там есть вот такая себе фраза:
@reboot
Выполнить команду один раз, при запуске cron(8).
ни на какие мысли не наводит?
0
202 / 44 / 2
Регистрация: 19.03.2012
Сообщений: 283
15.07.2012, 17:16
Я читал вот тут http://interface31.ru/tech_it/... aniyu.html и там есть такая вот строка "@reboot - выполнять команду при перезагрузке"
0
Эксперт по компьютерным сетямЭксперт NIX
 Аватар для Dmitry
13440 / 7534 / 830
Регистрация: 09.09.2009
Сообщений: 29,554
15.07.2012, 17:25
ну ты "читал", да еще и "где-то", а не в man,
а я пользуюсь регулярно.
и смею тебя заверить, записанная таким образом команда будет выполняться при каждом запуске компьютера, будь то "boot", будь то "reboot"....
0
 Аватар для ushim
179 / 180 / 55
Регистрация: 01.06.2011
Сообщений: 507
15.07.2012, 18:29  [ТС]
Dmitry, да, я делал через @reboot и всё работало. НО работало точно так же, как и через rc.local, то есть без sleep'а система зависает. Не нашёл большой разницы и вернул всё в rc.local.
0
202 / 44 / 2
Регистрация: 19.03.2012
Сообщений: 283
15.07.2012, 18:32
Мне кажется тебе надо копать в сторону update-rc.d и порядка загрузки, как я уже писал
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
15.07.2012, 18:32
Помогаю со студенческими работами здесь

Ожидание нажатия клавиши определенное время
Здравствуйте, пишу игру на си - Hit the mole. Смысл в том, что каждые 5 секунд, например, нужно генерировать число случайное, выводить...

Ожидание нажатия любой клавиши в ISE
Подскажите, плз, в ConsoleHost работает, в ISE нет: $host.UI.RawUI.ReadKey('NoEcho, IncludeKeyDown') | Out-Null Требуется при...

Отсутствует ожидание нажатия клавиши в keypressed
Добрый вечер, форумчане. Проблема такая, что при запуске программы пропускается вот этот блок if keypressed then ch:=readkey; ...

Пауза (ожидание нажатия любой клавиши)
В windows паузу можно сделать через getch(), которая хранится в conio.h. А убунту почему-то не знает такого файла. есть аналог ожидания...

Ожидание нажатия клавиши для закрытия консоли
Если запускать программу не через среду программирования, то она выполняется и, не дав разглядеть результат, закрывается. В C++ на этот...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru