aboutsummaryrefslogtreecommitdiff
path: root/toys/posix/tty.c
blob: 6116f135835183f4bd9ab9eaf7f8bbc6f7d737bc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/* tty.c - Show stdin's terminal name
 *
 * Copyright 2011 Rob Landley <rob@landley.net>
 *
 * See http://opengroup.org/onlinepubs/9699919799/utilities/tty.html

USE_TTY(NEWTOY(tty, "s", TOYFLAG_USR|TOYFLAG_BIN))

config TTY
  bool "tty"
  default y
  help
    usage: tty [-s]

    Show filename of terminal connected to stdin. If none print "not a tty"
    and exit with nonzero status.

    -s	Silent, exit code only
*/

#include "toys.h"

void tty_main(void)
{
  char *tty = ttyname(0);

  toys.exitval = !tty;
  if (!toys.optflags) puts(tty ? : "not a tty");
}