!<arch> Ogetshell 418696300 968 27 100644 48 ` C shell Bourne shell unknown shell Bourne shell Tgetshell.c 418696303 968 27 100644 408 ` /* * getshell() */ #include "bin.h" char *PGN = "Tgetshell"; /* program name */ main() { char *getshell(); /* get command shell pathname */ char *sv; /* pointer to shell variable */ int strcmp(); /* string comparison */ sv = getshell(); if (strcmp(sv, CSH) == 0) printf("C shell\n"); else if (strcmp(sv, SH) == 0) printf("Bourne shell\n"); else printf("unknown shell\n"); exit(0); } Tgetshell.sh 418870303 968 27 100755 288 ` #!/bin/csh -f # # getshell() # setenv SHELL /bin/csh Tgetshell >& T_OUTPUT setenv SHELL /bin/sh Tgetshell >>& T_OUTPUT setenv SHELL "/usr/ucb/rsh" Tgetshell >>& T_OUTPUT unsetenv SHELL Tgetshell >>& T_OUTPUT diff T_OUTPUT Ogetshell set diffstatus=$status rm -f T_OUTPUT exit($diffstatus)