#include #include #include #include int printvars(int len, char **names) { int ret = 0; for (int i = 0; i < len; i++) { char *val = getenv(names[i]); if (!val) { ret = 1; continue; } printf("%s\n", val); } return ret; } int main(int argc, char **argv, const char **envp) { int opt; while ((opt = getopt(argc, argv, "0")) != -1) { printf("printenv [var1 var2...]\n"); return 0; } argv += optind; argc -= optind; if (argc == 0) while (*envp) printf("%s\n", *envp++); else return printvars(argc, argv); return 0; }