In fact, that's where scripting got its name from: a shell script is a transcript of the commands you would've typed if you'd been sitting at a terminal using the computer in the normal, interactive way. So the computer is an actor replaying your "script". For this reason, I'm not even sure that Python/Perl/Ruby type languages should even be called scripting languages. They're interpreted, but that alone doesn't make them scripts.
If you're going to make people use a language whose objects must specifically be learned, you ought to go all the way and teach them C/C++/Go. Which are closer to Python than to (what I've seen of) Java in terms of how much needless boilerplate you've got. And they can use the shell to write programs that basically amount to combining existing programs together, and the aforementioned general-purpose langs for when they need to write a brand new program.
All of the above points seem valid to me, but I've got to say, in a world where Bourne-derived shells are all that's generally available, I still feel weird advocating the shell as the first language for beginners. An rc- or es-derived shell would be better for the syntax alone, but then they've also gotten rid of the "$@" voodoo and $IFS and so on.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds