What environment are you in, what is your background, are there any scripts that you have inherited, what languages are they in, and do you know what tools you'll have to interact with?

If you don't know any scripting language, and you've inherited existing scripts, learn the language that they are in. You'll have to learn it anyways, so start with that one.

If you need to interact with lots of external things, Perl is a good choice because of how many times you'll find your problem half-solved already on CPAN.

If you have a relatively limited set of tools to interact with, then it becomes more a question of finding a language that suits you personally. (I, obviously, use Perl most of the time. I'd prefer to use Ruby, but it isn't practical for me.)

The book to use, of course, follows from the language.

If you choose Perl, then you can find many options at [link|http://learn.perl.org/|http://learn.perl.org/]. I'd suggest [link|http://www.amazon.com/exec/obidos/tg/detail/-/0596001320/ref=ase_develooper/104-4462303-5667164?v=glance&s=books|Learning Perl] as a place to start. It is aimed at people who already are programmers, but don't necessarily know any scripting language. You may also find one of the beginners lists, or even [link|http://www.perlmonks.org/|http://www.perlmonks.org/], useful while you pick it up.

I'll let others suggest their favorite references for other languages that you might consider.

Cheers,
Ben