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?
I'm a perl guy, but the number of the bash (or ksh) functions I use and create on a daily basis is quite significant. For anything involved, I'll write a perl script, but for navigating the directory structure, and specifically for manipulating environment variables bash/ksh/... are indispensable. 
Again, especially for environment variables nothing beats shell, and quite a few programs use environment variables. In Perl, I have to write a bash alias or function that calls the Perl script, which writes out a temporary bash script, which then gets sourced after Perl exits in order to make the change in the same environment I'm launching from. 
I've done this, especially for heavy-lifting on path variables. But there's no way to do it in just Perl (or python or ruby... or C-code for that matter).
Is there any use for Bash scripting anymore?