diff --git a/elkscmd/file_utils/cat.c b/elkscmd/file_utils/cat.c index e8b9576..d4616c7 100644 --- a/elkscmd/file_utils/cat.c +++ b/elkscmd/file_utils/cat.c @@ -35,6 +35,8 @@ int main(int argc, char **argv) if (dumpfile(STDIN_FILENO)) goto error_read; } else { for (i = 1; i < argc; i++) { + if(!strcmp(argv[1], "-h")) goto usage; + errno = 0; fd = open(argv[i], O_RDONLY); if (fd == -1) { @@ -52,4 +54,11 @@ error_read: argv[0], argv[i], strerror(errno)); close(fd); exit(1); + +usage: + write(STDERR_FILENO, "concatentate file(s) or standard input to standard output.\n", 60); + write(STDERR_FILENO, "usage: cat [OPTIONS] [FILE]\n", 29); + write(STDERR_FILENO, "options: -h help\n", 18); + write(STDERR_FILENO, "when no file is given or file is '-' STDIN is used for input.\n", 62); + exit(0); }