diff --git a/src/apps/bin/tty.c b/src/apps/bin/tty.c new file mode 100644 index 0000000000..fdcdc6524c --- /dev/null +++ b/src/apps/bin/tty.c @@ -0,0 +1,53 @@ +// ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ +// +// Copyright (c) 2001-2003, OpenBeOS +// +// This software is part of the OpenBeOS distribution and is covered +// by the OpenBeOS license. +// +// +// File: tty.c +// Author: Daniel Reinhold (danielre@users.sf.net) +// Description: prints the file name of the user's terminal +// +// ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ + +#include +#include +#include + + +void +usage() +{ + printf("Usage: tty [-s]\n" + "Prints the file name for the terminal connected to standard input.\n" + " -s silent mode: no output -- only return an exit status\n"); + + exit(2); +} + + +int +main(int argc, char *argv[]) +{ + + if (argc > 2) + usage(); + + else { + bool silent = false; + + if (argc == 2) { + if (!strcmp(argv[1], "-s")) + silent = true; + else + usage(); + } + + if (!silent) + printf("%s\n", ttyname(STDIN_FILENO)); + } + + return (isatty(STDIN_FILENO) ? 0 : 1); +}