Finding Help

=From the command line=

man pages
Most commands come with a manual. These manuals are available via the man command. They are called "manpages".

To see the manual for man, type man man

Manpages are usually comprehensive and highly technical.

man sections
Sometimes more than one program will have the same name, or the same program will apply in different contexts. man has different sections to accomodate this. If you read "man man", then you've seen the sections. They are:


 * 1) Executable programs or shell commands
 * 2) System calls (functions provided by the kernel)
 * 3) Library calls (functions within program libraries)
 * 4) Special files (usually found in /dev)
 * 5) File formats and conventions eg /etc/passwd
 * 6) Games
 * 7) Miscellaneous (including  macro  packages  and  conventions), e.g. man(7), groff(7)
 * 8) System administration commands (usually only for root)
 * 9) Kernel routines [Non standard]

If you know you want a manpage from a particular section, you type:

man 4 ttyS

for example.

Searching
If you don't know the name of the command you're looking for, you can try

man -k apropos

or

<pre apropos man

for example.

The shell (help command)
Your shell will usually be 'bash'. To check which shell you are using, try these:

echo $SHELL

This should return the path to the shell you're using, for example: /bin/bash.

ps

This lists the processes running in the current shell. Usually this will only be 'ps' itself and the currently-running shell (again, probably 'bash'.)

=From the desktop=

Builtin help with F1
The least helpful help available, when it works at all.

The 'Help' Menu
There is usually an 'About' item in the Help menu of most applications. It will give you the version number of the running application, which is useful to know if you go searching on Google or asking on IRC for help.

The other things in the Help menu are usually the same things you'd find if you pressed F1, or just links to the project's Web page. It's worth a look, but don't expect much.

Google
OK, don't use Google for technical searches. It's not good, and in fact might be worse than useless in some circumstances. Here's why:


 * 1) Google parses your search strings. This is OK if you are looking for a local restaurant and you spell out "bock choi" instead of "bok choi" or whatnot, but if you are looking for "grep" you want grep.
 * 2) Google filters its search results according to what it knows about you. Again, this is a Good Thing in many use cases (particularly ones that involve shopping, and therefore advertising) but it can work against you when you're searching for technical stuff.

There are a few different search engines out there which don't track you. I usually use DuckDuckGo. It's not perfect, but it usually returns the same results for the same string, and that's what I'm looking for.

You'll frequently want to do site-specific searches. If you want to look up the Bash reference, and you happen to know that bash is maintained by the GNU project, you can try searching for 'bash reference site:gnu.org'.