В настоящее время я использую оболочку, которую я разрабатываю для Linux на C, и кто-то недавно указал мне на execlp для выполнения отдельных программ из моей оболочки. Пример, который я реализовал в оболочке, в настоящее время очень прост: запустите оболочку, запустите команду date и execlp запустит date, которая достаточно просто выводит дату на терминал. проблема в этом случае заключается в том, что хотя программа даты успешно выполняется и печатает на терминал, она печатает сразу после приглашения оболочки. Я предполагаю, что execlp возвращает дату слишком поздно, вызывая ее появление после быстрой печати. Есть ли способ избежать «отставания»? Кажется, что спящая функция подходит здесь, но я бы не знал, как ее реализовать вокруг execlp. Любые идеи здесь ??
Спасибо!