리눅스 2

[리눅스] 파이프와 리다이렉션의 차이

*본 글은 전문적으로 파이프와 리다이렉션의 차이를 쓴 글이 아니며, 저의 느낌을 쓴 글입니다. 리눅스 미니쉘을 만들면서 리다이렉션과 파이프의 차이가 궁금해졌다. 둘 다 입출력과 관련된 명령어 같아서 정확히 뭐가 다를까 싶었다. 개인적으로 느낀 바로는, 파이프는 함수의 사용이고, 리다이렉션은 printf의 사용이라고 느꼈다. 파이프 사용은 함수에서 argument를 넘겨주는 느낌. 가공한 값을 넘겨줘서 또 가공한다. 리다이렉션 사용은 fprintf 느낌. 가공한 값을 정해진 장소에 쓰거나 읽기만 한다. 뭔가 이렇게 비유해보니 좀 더 와닿는 느낌ㅎㅎ!

리눅스 2021.11.13

[리눅스] 미니쉘 만들기

시스템 관련 수업을 들으면서, 미니쉘 만들기 실습을 진행했다. 이전 과제에서 기본 미니쉘을 제작했고, 이번 과제에서는 리다이렉션과 파이프를 적용했다. 난이도를 낮추어 한 줄에 하나의 IPC만 허용하였다. 선배님의 과제와 인터넷을 참고하여 진행하였는데... 이전 과제를 최대한 변형하지 않고 진행하려고 하니 코드가 아주 엉망이 됐다ㅋㅋㅋㅋ... 하면서 너무너무 거슬렸지만 제출이 우선이라서 그냥 패스 ㅎㅎ.. Pipe // pipe cmd function void ex_launchPipe(char **args, char **argsPipe) { int pipefd[2]; pid_t pid1, pid2; //pipe if (pipe(pipefd) < 0) { printf("\nPipe could not be i..

리눅스 2021.10.23