이번 과제는 UNIX 매커니즘을 더 자세히 알아가는 프로젝트입니다.
◦ open
◦ close
◦ read
◦ write
◦ malloc
◦ free
◦ dup2
◦ execve
◦ fork
◦ perror
◦ strerror
◦ exit
pipex 프로그램은 아래와 같이 동작할 것입니다.
$> ./pipex file1 cmd1 cmd2 file2
위의 명령어는 아래 shell에서 실행되는 것과 동일하게 처리되어야 합니다.
$> < file1 cmd1 | cmd2 > file2
$> ./pipex infile ``ls -l'' ``wc -l'' outfile
$> < infile ls -l | wc -l > outfile
$> ./pipex infile ``grep a1'' ``wc -w'' outfile
$> < infile grep a1 | wc -w > outfile
보너스 파일의 경우 _bonus.{c/h} 로 명시되어야 합니다.
$> ./pipex file1 cmd1 cmd2 cmd3 ... cmdn file2
위의 명령어는 아래와 상응해야 합니다.
< file1 cmd1 | cmd2 | cmd3 ... | cmdn > file2
$> ./pipex here_doc LIMITER cmd cmd1 file
위의 명령어는 아래와 상응해야 합니다.
$> cmd << LIMITER | cmd1 >> file