• We’re currently investigating an issue related to the forum theme and styling that is impacting page layout and visual formatting. The problem has been identified, and we are actively working on a resolution. There is no impact to user data or functionality, this is strictly a front-end display issue. We’ll post an update once the fix has been deployed. Thanks for your patience while we get this sorted.

Recommendation for textbooks on Unix, Linux, and Perl

BehindEnemyLines

Senior member
I have no experience with Unix, Linux, or Perl except for very basic Unix commands using SSH logins. I also never really wrote any scripts relating to Unix or Perl. I am looking for a few textbooks that cover Unix, Perl, and Linux.

Programming experiences include Java, C, C++, other hardware languages, and embedded systems with microcontrollers. The problem is that all of these were done on Windows, so I have no idea how to accomplish something equivalent in the Linux/Unix systems. It seems also that a lot of test automation is done with Perl and Tcl.

The problem for me is the sheer numbers of distributions, which is daunting for someone with very little experience in Linux or Unix.
 
What are you looking to accomplish with *NIX/Perl? In most instances, if you know enough to work with microcontrollers, the different distributions (which differ mainly in their GUIs) won't matter too much.

You mention test automation. I've done test automation in Windows, with a variety of languages. I infer that you're looking to test some *NIX thing?

Classically, programming Perl requires Programming Perl (aka the Camel Book) by Larry Wall (the author of Perl). It's tutorial, reference, and examples all in one volume.

Unix Power Tools, another O'Reilly book, has a lot of interesting *NIX stuff; but I'm not sure how much of it relates to what you want to do.
 
The most important thing about UNIX is getting comfortable with the shell and associated utilities. You can install a UNIX shell in Windows with something like Cygwin (http://www.cygwin.com/), or you can install any distro really. You need to familiarize yourself with a text editor as well, either emacs or vim (both have steep learning curves, though). I don't have any good book references since I learned via experience, but I'm sure you can find a ton out there. However, there's no good replacement for just tinkering with the shell. Google references when you need to and just play around otherwise.

As for Perl, I completely agree that Programming Perl is a necessity. However, if you want a book better for learning, you should get Learning Perl (http://www.amazon.com/Learning...qid=1232608951&sr=8-2), aka the llama book.
 
vim is the easier of the two text editors listed to learn. You just need to understand a few concepts (i.e. there are different "modes", in such that you are not always in a mode which if you type something, it will appear as text, there is a "command" mode, and "insert" mode. In the command mode you can type in certain keyboard commands to do things, like delete lines or find/replace a pattern, repeat the last command you did, do the next command sequence a certain number of times, etc.. In insert mode, well, you type in new text. There are a few good references on the web that will teach you vim.

As for learning unix/linux, the best way is to simply setup a system with it and force yourself to use it day to day. Really is no better learning method than "doing"... As for books, the learning perl is a decent start, however, I have found it to be very deficient on things like pointers and objects. That said, it is an extremely good book for learning the basics. For things like objects, inheritance, and pointers, http://www.perlmonks.org will have some tutorials, but even those do not tell you why you do certain things, it just says to do it...
 
Originally posted by: esun
The most important thing about UNIX is getting comfortable with the shell and associated utilities. You can install a UNIX shell in Windows with something like Cygwin (http://www.cygwin.com/), or you can install any distro really. You need to familiarize yourself with a text editor as well, either emacs or vim (both have steep learning curves, though). I don't have any good book references since I learned via experience, but I'm sure you can find a ton out there. However, there's no good replacement for just tinkering with the shell. Google references when you need to and just play around otherwise.

As for Perl, I completely agree that Programming Perl is a necessity. However, if you want a book better for learning, you should get Learning Perl (http://www.amazon.com/Learning...qid=1232608951&sr=8-2), aka the llama book.

And do the exercises, they are well thought out.
 
Back
Top