>> Delete No. 58435 article
No. 쉘 만드는데서 질문이요~

등록 2002-10-07 02:40:00 By localhost     조회 5
이름 이호석    

		지금 씨언어로 리눅스 쉘을 만들고 있는데요,
보통 bash나 ash같은 쉘을 보면,
ls -al & 이렇게 치면 백그라운드로 돌아가고
ls -al > a.out 이렇게 치면 결과가 a.out로 저장이 되잖아요..
지금 백그라운드로 돌아가는것 까지는 만들었는데,
리다이렉션이 걸리네요~
리다이렉션 처리는..
화면에 출력할것을 배열로 받아들어서 그것을 다시 화일에 저장해야 하는것
맞죠?
배열에 저장된것을 파일에 저장하는 것은 write함수를 쓰면 될것 같은데,
화면에 출력할 것을 배열에 저장하는 방법을 모르겠네요~
 참고로 지금까지 쉘을 만든 방법은..
while로 Esc키가 나올때까지 계속 돌게 만들어 놓고, 그 안에서
키보드로 명령을 받아들여서 그걸 배열에 저장하고,
배열에 들어있는것을 command 와 option 등등 모두 다시 나누어서
fork로 프로세스 하나 생성하고,
그안에서 execvp로 우리가 쓴 것을 실행하게 했어요..
부모 프로세스는 자식 프로세스가 끈날때까지 기다리게 하고요
자식이 끈나면 다시 우리가 명령을 넣을때 까지 대기하게 만들었죠~~
그런식으로 만들었는데,
리다이렉션에서 걸려가지고요~~
 질문의 요점은,
모니터에 출력될 내용을 어떤식으로 배열에 저장하는가?
이것이예요~
 혹시나 아시는분 계시면 꼭.. 알려주세요~
[관리자] 패스워드를 입력 하십시오. 답장이 존재하면 함께 삭제됩니다.[ 목록 | 이전 ]
패스워드:    

Copyleft 1999-2026 by JSBoard Open Project
Theme Designed by IDOO All right reserved