1 static char *sccsid = "@(#)printenv.c 4.1 (Berkeley) 10/02/80"; 2 /* 3 * printenv 4 * 5 * Bill Joy, UCB 6 * February, 1979 7 */ 8 9 extern char **environ; 10 11 main(argc, argv) 12 int argc; 13 char *argv[]; 14 { 15 register char **ep; 16 int found = 0; 17 18 argc--, argv++; 19 if (environ) 20 for (ep = environ; *ep; ep++) 21 if (argc == 0 || prefix(argv[0], *ep)) { 22 register char *cp = *ep; 23 24 found++; 25 if (argc) { 26 while (*cp && *cp != '=') 27 cp++; 28 if (*cp == '=') 29 cp++; 30 } 31 printf("%s\n", cp); 32 } 33 exit (!found); 34 } 35 36 prefix(cp, dp) 37 char *cp, *dp; 38 { 39 40 while (*cp && *dp && *cp == *dp) 41 cp++, dp++; 42 if (*cp == 0) 43 return (*dp == '='); 44 return (0); 45 } 46