-
Shell 만들기 참고할 것System Programming/Ubuntu Linux 2021. 10. 28. 13:30728x90
명령어 구현
1. rm 명령어 구현
https://github.com/yadu007/Basic-Unix-Commands-Implementation/blob/master/rm.c
2. mv 명령어 구현
https://github.com/JavaGuru64/Team-HA-C-Linux-Commands/blob/master/move.c
3. pwd 명령어 구현 / 에러 핸들링
https://www.delftstack.com/ko/howto/c/get-current-directory-in-c/
4. 에러 메세지 출력
Signal 처리
1. SIGCHLD와 waitpid
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=nds239&logNo=10131452097
2. waitpid와 WIFSTOPPED(status) 매크로 사용 관련
https://codetravel.tistory.com/42
https://jangpd007.tistory.com/60
3. getline을 사용하면 signal(SIGINT,SIG_IGN); 가 일어나도 segmentaion fault 생기더라
https://stackoverflow.com/questions/36159264/c-segmentation-fault-when-signal-received
4. process group
5. signal 개념 복습
https://reakwon.tistory.com/46
(다중)Pipe와 I/O Redirection 구현된 Custom Shell
1. cmd1 | cmd2 | cmd3 | cmd4 이런 꼴
https://stackoverflow.com/questions/47478392/redirection-at-the-end-of-the-pipe-c-shell
2. 다중 파이프 프로세스 원리
https://hwan-shell.tistory.com/324
3. 다중 파이프 하나의 process group? (google 검색어 implement multiple pipes process group)
https://stackoverflow.com/questions/8389033/implementation-of-multiple-pipes-in-c
https://stackoverflow.com/questions/28636260/how-to-implement-pipes-for-multiple-processes
https://stackoverflow.com/questions/28719343/multiple-pipes-and-processes
4. sort < input > output 이런 꼴
https://stackoverflow.com/questions/19846272/redirecting-i-o-implementation-of-a-shell-in-c
https://github.com/mhwan/Myshell/blob/master/myshells/source/main.c
https://cpm0722.github.io/system-programming/shell
https://blog.naver.com/PostView.nhn?blogId=easeon11&logNo=221859129893
http://theeye.pe.kr/archives/938
http://www.xevious7.com/linux/lpg_6_2_2.html
https://sosal.kr/1114?category=227313
테스트 케이스
728x90'System Programming > Ubuntu Linux' 카테고리의 다른 글
시스템 프로그래밍 실습 11주차 : Pthreads (0) 2021.11.08 시스템 프로그래밍 실습 10주차 : Sockets (0) 2021.11.01 시스템 프로그래밍 실습 9주차 : System V IPC (0) 2021.10.22 시스템 프로그래밍 실습 8주차 : IPC (0) 2021.10.17 시스템 프로그래밍 실습 7주차 : Signals (0) 2021.10.10