#!/usr/bin/perl -w

use strict;

open(IN,"</etc/shells") or
  die "Unable to open /etc/shells for read";

my @entries = <IN>;
close(IN);
grep m%/usr/local/bin/tcsh%, @entries or push @entries,"/usr/local/bin/tcsh\n";
grep m%/usr/local/bin/bash%, @entries or push @entries,"/usr/local/bin/bash\n";

system("cp -f /etc/shells /etc/shells.bak") == 0 or
  die "Unable to make backup of /etc/shells";

open(OUT,">/etc/shells") or die "Unable to open /etc/shells for write";
print OUT @entries;
close(OUT);
