Running total hack time: 17.5

Topics: Command line

Resources: Erin Call, Command Line Crash Course

Oh my god, Command Line Crash Course. Ya’ll. If you are not already a command line wiz, go check this out. It’s awesome. Just go read through it. You will not be sorry.
I’ve been talking to Erin over the last few days about command line and Git, and she’s set me straight on some things. I’ve been treating Git and the command line in general as if they are interchangeable, and they most certainly are not. She also took a look at my Totally Informal Command Dictionary, so for this very moment, it is somewhat accurate. Yay! And I only had one incredibly embarrassing and glaring error! I have now been disabused of the idea that -m when using git commit means “master.” It in fact means “message,” which makes sense if I had stopped and thought about it. Committing makes changes to the working branch, so -m couldn’t really mean master. Now, that was not at all my only error, just the most glaring one.
She showed me how pipe is useful, which I was somewhat murky on. I knew it took the output of whatever was before the pipe and used it as the input for the next command after the pipe, but I wasn’t really sure what that could do. She showed me how:
$ cat <really long file>
prints a super long and unwieldy result. She explained that the “tail” command prints the last ten lines of whatever its input is, so:
$ cat <really long file> | tail
creates the former output, then carries it over to tail, so it ends up only outputting the last ten lines, making things much more easily manageable. Nice!

I’ve also been reading up on some of the terms used in the constellation of things to know about the command line, trying to get a clearer image in my head of what all these things are (bash, vim, nano, Git, csh, and on and on…). Once I have a more solid picture, I’ll explain it all here!