Remember that teacher who never forgot a single thing in history? Who could not only tell you what General Custer was wearing at his last stand but the grade you got on your last test?
Well, bash, the shell you’re using in your command line has the same thing. It’s called history. How original! You use the command history to see your history. Okay, maybe not original. Maybe it should be called thingsIdid or whatIdid. Anyway, it looks like:
Alpha:~ computerlamp$ history 1 ls 2 pwd 3 cd 4 history
See? Those are the last four commands I happened to type. Bash is like that teacher, it doesn’t forget.
It’s also useful to combine history with a grep:
Alpha:~ computerlamp$ history | grep ls 1 ls 5 history | grep ls
So if you forget ‘exactly how did I do that find command?’ you can, well, find it!
Another way in bash to see your history is to hit the up arrow at the command line. You’ll see previous commands that you executed and can hit enter and run them again. If I hit the up arrow ↑ I get:
Alpha:~ computerlamp$ history | grep ls
Which, guess what? It’s the command I just typed.
Your history can contain 500 (or more) commands… and that’s a lot to see. To see the last 10 commands you typed, try this:
Alpha:~ computerlamp$ history 10 4 ls 5 echo "Stop Hydra" >plans 6 ls 7 history 8 fortune 9 yes 10 find . -type f 11 ps auxw 12 ps 13 history 10
See those numbers before each command? They’re useful too. You can either hit that up-arrow until you find the command you’re looking for (boy, that’s boring) or you can do:
Alpha:~ computerlamp$ !8 fortune You learn to write as if to someone else because NEXT YEAR YOU WILL BE "SOMEONE ELSE."
Now you don’t have to remember every command flag you’ve ever used, bash does it for you.
Pingback: Alias ... Not the Television Show - ComputerLamp