Запустить скрипт в переднем плане на загрузочной малине Pi

У меня есть сценарий для запуска при загрузке, и я бы хотел использовать клавиатуру для взаимодействия со сценарием. Я успешно установил это для запуска в crontab; однако сценарий работает в фоновом режиме, и я не могу использовать клавиатуру для взаимодействия со сценарием. Вот упрощенный пример скрипта:

def write_to_txt(item_to_write): with open("my_txt_file.txt", "a") as myfile: myfile.write('\n'+str(item_to_write)) while True: keys_to_enter = raw_input() write_to_txt(keys_to_enter) 

Пожалуйста, может кто-нибудь указать мне в правильном направлении?

3 Solutions collect form web for “Запустить скрипт в переднем плане на загрузочной малине Pi”

Я узнал, как запустить сценарий при загрузке и позволить клавиатуре взаимодействовать с программой. В файл ~ / .bashrc я добавил:

 sudo python /home/pi/example.py 

Если я правильно понял, вы хотите, чтобы ваша программа привязывала свой stdin к tty1? Т.е. терминал, который вы видите на экране, если у вас есть подключенный дисплей, – это то, где по умолчанию ввод клавиатуры заканчивается, если X-окна не установлены или tty не переключается с помощью Ctrl + Alt + Fx?

Переводит ли право собственности на процесс сценария фона на оболочку на tty1 параметр? Если это так, самым простым может быть автоматический вход в систему Pi (или пользователю необходимо будет войти в систему с клавиатурой при запуске). Затем автоматически запустите программу на tty1, чтобы ее stdin / stdout привязали к tty1.

Чтобы достичь последнего, я думаю, вы можете поместить его вызов в один из сценариев запуска bash, что-то вроде того, что предлагается здесь: https://www.raspberrypi.org/forums/viewtopic.php?f=29&t=7192

Вы можете перенести фоновый процесс python на передний план. Сначала укажите задачу по заданию, например:

 pi@raspberrypi:~ $ jobs [1]+ Stopped python pythonExample.py 

Затем переместите задачу на передний план на fg [номер задания]

 fg 1 
  • Как я могу сделать пакетную вставку в базу данных Oracle с помощью Python?
  • Почему PyCharm дает нерешенные справочные ошибки в отношении некоторых импортных операций Numpy?
  • импортирование модуля, когда имя модуля находится в переменной
  • UnicodeDecodeError: кодек 'utf8' не может декодировать байт 0x80 в позиции 11: недопустимый стартовый байт
  • Как написать конкретную строку в файле в Python?
  • AttributeError: объект 'module' не имеет атрибутов 'tests'
  • Ошибка Tensorflow с использованием моих собственных данных
  • Python, как удалить пробелы из текстовых узлов XML
  • Проверка Python для Completed и failed Task Планировщик Windows
  • Как использовать пример модели PTB от Tensorflow?
  • Назначение кортежа Python и проверка в условных операторах
  •  
    Interesting Posts for Van-Lav
    Python - лучший язык программирования в мире.