nsm7 Ответов: 1

Как реализовать функцию run ?


Я пишу код C для системы на базе LINUX, чтобы создать меню вместо командной строки, которая требует ввода длинных команд. Он печатает наши каталоги и файлы в текущем рабочем каталоге. Команда " r " в случае коммутатора должна запускать исполняемый файл. Пользователю будет предложено ввести номер файла или имя из данного списка для выполнения, но я не знаю, какие команды использовать для его реализации.

Что я уже пробовал:

Я пробовал использовать system (), но это не помогло.

1 Ответов

Рейтинг:
2

Garth J Lancaster

"не помогло" на самом деле не говорит нам, почему нет/что вы ищете - вы можете попробовать функцию exec_prog (), описанную здесь Как выполнить внешнюю программу в коде C в linux с аргументами? - переполнение стека[^]

.. поскольку вы не говорите, хотите ли вы, чтобы результат был захвачен, например, немного трудно предложить больше помощи (качество помощи прямо пропорционально качеству требований/вопроса)


nsm7

Извините за туманный вопрос. Я попытался опубликовать код, но он был слишком длинным, и я не мог решить, какую часть опубликовать. Выход не должен быть захвачен. Я обязательно пройду по ссылке переполнения стека, прежде чем просить о дальнейшей помощи.

Garth J Lancaster

круто - я бы также начал с простой вещи для запуска-iirc, ничто не мешает вам сделать "перенаправление" вашего вывода в текстовый файл, чтобы убедиться, что вы получаете что - то из exe-файла или используете что-то вроде

&ампер;&ампер; дата Эхо +"%г/%г/%г %ч:%м:%ы" и GT; /некоторые path/tracefile.txt

в конце вашей команды просто чтобы вы знали что то произошло

CPallini

5.