PDA

Просмотр полной версии : Поток?(си)


DaemoniZ
25.09.2008, 21:32
Есть программа - командный интерпретатор. Требуется из этой программы запустить внешний файл и использовать результат его выполнения.

пример

>bash.exe
$ pwd.exe
/home
$ cd.exe ..
$ pwd.exe
/

если возможно, покажите конкретную реализацию для данного случая.

desTiny
25.09.2008, 21:38
command >> "out.out"
ну и чтон-ть типа
more out.out

DaemoniZ
25.09.2008, 21:48
нет. вы не поняли. проблема заключается в том, что я не знаю как заставить bash.exe сменить рабочую директорию с помошью cd.exe

DaemoniZ
25.09.2008, 23:30
Извините. Действительно трудно обьяснить задачу.
Привожу пример.

bash.exe

..
while ("life" != "sheet")
{
printf("\nbash");
printf("\n$ ");
input = gets(line);
printf("%",system(input)); //выполнение внешней программы
}
..

cd.exe

..
{
SetCurrentDirectory(argv[1]);
}
..

Запускается программа bash.exe. Далее из нее запустится cd.exe с соответствующим параметром (например ".." - переход вниз по каталогу). Рабочая директория bash.exe должна изменится.

DaemoniZ
25.09.2008, 23:34
Исходник интерпретатора тут: http://www.rapidshare.ru/789870
попробуйте выполнить команду dir, сменить директорию и еще раз выполнить dir

...это часть задания, которое дали мне в универе