add manual page, cleanup
[unix-history] / usr / src / usr.bin / printenv / printenv.c
... / ...
CommitLineData
1/*
2 * Copyright (c) 1987 Regents of the University of California.
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms are permitted
6 * provided that the above copyright notice and this paragraph are
7 * duplicated in all such forms and that any documentation,
8 * advertising materials, and other materials related to such
9 * distribution and use acknowledge that the software was developed
10 * by the University of California, Berkeley. The name of the
11 * University may not be used to endorse or promote products derived
12 * from this software without specific prior written permission.
13 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
14 * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
15 * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
16 */
17
18#ifndef lint
19char copyright[] =
20"@(#) Copyright (c) 1987 Regents of the University of California.\n\
21 All rights reserved.\n";
22#endif /* not lint */
23
24#ifndef lint
25static char sccsid[] = "@(#)printenv.c 5.3 (Berkeley) %G%";
26#endif /* not lint */
27
28/*
29 * printenv
30 *
31 * Bill Joy, UCB
32 * February, 1979
33 */
34main(argc, argv)
35 int argc;
36 char **argv;
37{
38 extern char **environ;
39 register char *cp, **ep;
40 register int len;
41
42 if (argc < 2) {
43 for (ep = environ; *ep; ep++)
44 puts(*ep);
45 exit(0);
46 }
47 len = strlen(*++argv);
48 for (ep = environ; *ep; ep++)
49 if (!strncmp(*ep, *argv, len)) {
50 cp = *ep + len;
51 if (!*cp || *cp == '=') {
52 puts(*cp ? cp + 1 : cp);
53 exit(0);
54 }
55 }
56 exit(1);
57}