Какие команды вы будете выполнять в оболочке?
Внешне, вы можете использовать какой-то вариант для этого:
#include <stdlib.h>
static const char *cmds[] =
{
"command 1 with options",
"command 2 with different options",
0,
};
int main(void)
{
int i;
for (i = 0; cmds[i] != 0; i++)
if (system(cmds[i]) != 0)
exit(EXIT_FAILURE);
return(EXIT_SUCCESS);
}
Я предполагаю, что команды обеспечат соответствующую диагностику любых проблем.
Если вам нужно контролировать аргументы, то у вас есть больше работы.
Главное предостережение: «это диск, на котором запущена операционная система», потому что если это так, есть вероятность, что форматирование этого диска остановит успешную работу программ.