запустить фоновый процесс, терминал ждет LF/CR перед возвратом в командную строку

запустить фоновый процесс, терминал ждет LF/CR перед возвратом в командную строку

У меня есть небольшой фрагмент кода C, который я пытаюсь запустить в фоновом режиме. Когда я запускаю программу с помощью &, я могу найти процесс в top или с помощью ps, и я вижу ожидаемый дисплей ввода-вывода в терминале или в другом месте, если передать в файл или запустить с помощью nohup.

Вот моя проблема: вместо того, чтобы запустить приложение и немедленно вернуть управление командной строке, терминал, похоже, ждет, пока я не нажму Enter (или не воспользуюсь стрелкой вверх, чтобы начать прокручивать историю команд), чтобы снова отобразить командную строку. Возможно ли запустить приложение в фоновом режиме и снова получить доступ к командной строке, не нажимая Enter снова? Я пробовал различные комбинации , nohup, disown, 2>&1и т. д... безуспешно.

решение1

Управление doesвозвращается в оболочку сразу после запуска приложения, о чем свидетельствует тот факт, что вы можете получить доступ к истории с помощью клавиш со стрелками. По какой-то причине оболочка не выводит приглашение, пока вы не нажмете return. Вы можете убедиться в этом, введя команду перед нажатием enter( ls). Ее результат должен быть отображен на экране.

Связанный контент