I just finished my second year as a university CS student, so my "real-world" knowledge is lacking.  I learned Java my first year, continued with Java and picked up C and simple Bash 
scripting my second.  This summer I'm trying to learn Perl (God help me).  I've dabbled with Python a bit in the past.
My question is, now that we have very readable, very writable scripting languages like Python, Ruby, Perl, etc, why does anyone write Bash scripts?  Is there something I'm missing?  I know my linux box has perl and python.  Are they not ubiquitous enough?  Is there really something
that's easier to do in Bash than in some other hll?
The real difference between bash and python is that python is a general purpose scripting language, while bash is simply a way to run a myriad of small (and often very fast) programs in a series. Python can do this, but it is not optimized for it. The programs (sort, find, uniq, scp) might do very complex tasks very simply, and bash allows these tasks to interoperate very simply with piping, flushing output in and out from files or devices etc. While Python can run the same programs, you will be forced to do bash scripting in the python script to accomplish the same thing, and then you are stuck with both python and bash. Both are fine by them self, but a mix of these don't improve anything IMHO.
Is there any use for Bash scripting anymore?