No worries! The man command is short for manual - basically, you can think of it as a local wiki on your computer (local being that you don’t need internet to access it) for various installed things. While “things” is generally going to be programs for most people, the “man page database” can actually have entries for things that aren’t programs like various Linux internals! Here are a couple of other example man pages:
man (Yep, there’s a man page for the man command!)
That last one, bash-builtins I linked to also demonstrate that there are man pages for more than just programs. cd for example is a very commonly used command, but its not actually a program - it is what is known as a “built in” because its a part of the specific shell you’re using (9 times out of 10 these days, that is going to be bash unless you install a different one like zsh). A ton of commands can often be found under /usr/bin (or /usr/local/bin) - if you enter which program_name at your shell, it’ll tell you where exactly that program lives at. Commands come in many flavors, they can be programs, they can be built-ins, they can be shell scripts (even if there is no file extension, Linux doesn’t actually care about the file extension - its purely there for us humans!), or they can be aliases.
A couple of fun facts on even that itself:
You can run whichwhich to see where the which command itself lives
The which command will also tell you if there is an alias defined for the command, an alias is a custom defined command - but if you have a longer command that you commonly want to run you can redefine it as an alias, so ls is often by default an alias of ls--color=auto to give you a few splashes of colors in the output of the command without actually having to type out ls--color=auto every time
Despite the fact that cd is a built-in, for what I believe is compatibility reasons, there is a file at /usr/bin/cd on most Linux distributions… which itself is just a shell script that actually invokes the cd built-in!
That’s probably a bit more information than you originally intended, but I like to be thorough on these sorts of things as I’m passionate about Linux! Note that at the start, man pages can often seem really daunting, but after spending some time looking at them you’ll get really good at quickly finding what you need. You can even write your own, and there is even a man page on the conventions and specifications on how you’d usually write them!
No worries! The
man
command is short for manual - basically, you can think of it as a local wiki on your computer (local being that you don’t need internet to access it) for various installed things. While “things” is generally going to be programs for most people, the “man page database” can actually have entries for things that aren’t programs like various Linux internals! Here are a couple of other example man pages:man
command!)That last one,
bash-builtins
I linked to also demonstrate that there are man pages for more than just programs.cd
for example is a very commonly used command, but its not actually a program - it is what is known as a “built in” because its a part of the specific shell you’re using (9 times out of 10 these days, that is going to bebash
unless you install a different one likezsh
). A ton of commands can often be found under/usr/bin
(or/usr/local/bin
) - if you enterwhich program_name
at your shell, it’ll tell you where exactly that program lives at. Commands come in many flavors, they can be programs, they can be built-ins, they can be shell scripts (even if there is no file extension, Linux doesn’t actually care about the file extension - its purely there for us humans!), or they can be aliases.A couple of fun facts on even that itself:
which which
to see where thewhich
command itself liveswhich
command will also tell you if there is an alias defined for the command, an alias is a custom defined command - but if you have a longer command that you commonly want to run you can redefine it as an alias, sols
is often by default an alias ofls --color=auto
to give you a few splashes of colors in the output of the command without actually having to type outls --color=auto
every timecd
is a built-in, for what I believe is compatibility reasons, there is a file at/usr/bin/cd
on most Linux distributions… which itself is just a shell script that actually invokes thecd
built-in!That’s probably a bit more information than you originally intended, but I like to be thorough on these sorts of things as I’m passionate about Linux! Note that at the start, man pages can often seem really daunting, but after spending some time looking at them you’ll get really good at quickly finding what you need. You can even write your own, and there is even a man page on the conventions and specifications on how you’d usually write them!
You explained a lot, thank you. This is my first experience with Linux and its community. It’s very nice how willing everyone is to help explain