리눅스 시스템 프로그래밍 구현 질문합니다.
CutieBaby
쉘은 프롬프트를 보여준 다음에 사용자가 입력하는 명령 라인을 입력 받아서 실행하는 일을 반복한다. 입력된 명령 라인을 해석한 다음에 내장명령인 경우에는 자신이 직접 그 명령을 실행한다. 내장명령이 아닌 경우에는 자식 프로세스(쉘)를 생성한 다음에 자식 쉘 프로세스가 명령을 실행하도록 한다.
기본적인 명령 라인은 다음과 같이 주어진다.
$ command [-option] [argument]
command는 명령어로 실행파일 이름을 나타낸다. command는 반드시 존재해야 한다. option은 명령 수행의 조건을 나타내고, argument는 명령 수행에 필요한 부가 정보를 나타낸다. option과 argument는 필요한 경우에만 주어지므로 없을 수도 있고, 경우에 따라서는 여러 개가 주어질 수도 있다.
[문제] 위에서 설명한 쉘의 기능 중에서 명령 실행 부분을 제외한 나머지 기능들을 수행하는 프로그램 mysh를 작성한다. 즉, 프롬프트를 보여주고, 명령라인을 입력받은 다음 이를 해석해서 화면에 보여준다. mysh는 키보드에서 ^d를 입력하거나 logout을 입력하면 종료하도록 한다.
[실행 예]
mysh$ ls -l /home
command : ls
argv[0] : ls
argv[1] : -l
argv[2] : /home
mysh$ find / -name a.out -print
command : find
argv[0] : find
argv[1] : /
argv[2] : -name
argv[3] : a.out
argv[4] : -print
mysh$ ^d
exit mysh
[참고] 다음 라이브러리 함수가 사용된다.
printf(), fgets(), strtok()
소스프로그램을 작성해야되는데
도무지 감이 잡히지 않습니다.
아시는분 계시다면 조언좀 부탁드립니다.
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2700400 | 원넓이를 계산이요 ㅜㅜ | 천칭자리 | 2025-07-04 |
2700368 | if에 관해서 질문이요... | Orange | 2025-07-04 |
2700339 | 이거 결과값이 왜이런건지.. (4) | 그댸와나 | 2025-07-04 |
2700313 | 파일 읽어서 저장하는데 빈파일일 경우 문재가 발생하네요.. (2) | 크나 | 2025-07-03 |
2700287 | 구조체 동적할당 연습을 하는데 오류가 뜹니다...(해결) (3) | 아련나래 | 2025-07-03 |
2700264 | 문자와 숫자 동시에 입력??? | 글고운 | 2025-07-03 |
2700236 | txt파일로만 쓰고 읽게 하려면 어떻게 해야 하나요..?? (8) | 미국녀 | 2025-07-03 |
2700211 | 전위 연산자 (2) | 어른처럼 | 2025-07-02 |
2700183 | C에서 파일이름을 받고, 그 파일의 사이즈를 출력해줘야하는데 내용이 출력이 안되네요 ;ㅅ; | 피스케스 | 2025-07-02 |
2700150 | 꼭좀 도와주세요ㅠㅠㅠ | 호습다 | 2025-07-02 |
2700095 | 연산문제...질문... | 오빤테앵겨 | 2025-07-01 |
2700070 | while문 , 3의배수 출력하는 프로그램좀 짜주세욤. | 횃불 | 2025-07-01 |
2700041 | 초보인데요 ㅎ 배열안에 배열을 집어넣을수 있나요?? | 헛장사 | 2025-07-01 |
2700012 | 배열// (1) | 전갈자리 | 2025-07-01 |
2699895 | 무한루프에 빠집니다.!! 해결좀부탁드려요 (10) | 선아 | 2025-06-30 |
2699842 | 질문을 너무 많이 하네여.....죄송.... (2) | 해님꽃 | 2025-06-29 |
2699816 | 오류 질문입니다.. (1) | 해비치 | 2025-06-29 |
2699763 | 질문입니다 ! 꼭 좀 도와주세요ㅠㅠ (2) | 미라 | 2025-06-28 |
2699555 | c언어 다항식을 입력을 했는데 왜 출력이 안될까요? | 피스케스 | 2025-06-27 |
2699528 | C언어 포인터연산 질문입니다. (3) | 안녕나야 | 2025-06-26 |