There are a lot of ways to get help on Linux, especially when you're getting started and want to learn a number of important commands. If you’re fairly new to Linux, you might need some help getting started on the command line. But you made it here, so let’s run through a number of ways that you can get comfortable and up to speed fairly quickly. Man pages Every Linux command should have a “man page” (i.e., manual page) – an explanation of what the command does, how it works and the options that you can use to specify what you want the command to show you. For example, if you wanted to see the options for formatting the output of the date command, you should look at the man page with the command “man date”. It should among other things, show you the format of the date command like this: SYNOPSIS date [OPTION]... [+FORMAT] date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]] In syntactical descriptions such as this, anything in square brackets is optional. You can use the date command simply by typing “date” and nothing more. The vertical bars in the first square-bracketed portion of the syntax shown mean “or”, so you select from the options shown if you want to see the date and time in “universal time” (the primary time standard by which the world regulates clocks and time). $ date -u Mon Jul 8 06:03:21 PM UTC 2023 Man pages will, after syntactical descriptions, go on to explain each of the options, often providing examples. Options for the date command include these and others: Options: -d output short description for each topic -s output only a short usage synopsis for each topic matching PATTERN -u, --utc, --universal print or set Coordinated Universal Time (UTC) NOTE: Most any command that does not have its own man page is likely a “built-in” – a command that is built into another command’s executable file. For example, the bash shell has a number of built-ins that make it easier to use. Apropos command The apropos command will list commands that are related to whatever you ask about. Use the command shown below and you’ll get a list of commands and explanations related to passwords. $ apropos password chage (1) - change user password expiry information tpm2_policypassword (1) - Enables binding a policy to the authorization value of the authorized TPM object. git-credential-cache (1) - Helper to temporarily store passwords in memory grub2-mkpasswd-pbkdf2 (1) - generate hashed password for GRUB htdbm (1) - Manipulate DBM password databases lchage (1) - Display or change user password policy lpasswd (1) - Change group or user password openssl-passwd (1ossl) - compute password hashes openssl-srp (1ossl) - maintain SRP password file pwmake (1) - simple tool for generating random relatively easily pronounceable passwords pwscore (1) - simple configurable tool for checking quality of a password secret-tool (1) - Store and retrieve passwords sshpass (1) - noninteractive ssh password provider systemd-ask-password (1) - Query the user for a system password systemd-tty-ask-password-agent (1) - List or process pending systemd password requests vncpasswd (1) - change the VNC password Help command The Linux help command will provide information on built-ins. For example, you can ask help about the help command. The response, as shown below, shows that help is itself a built-in. $ help help help: help [-dms] [pattern ...] Display information about builtin commands. Displays brief summaries of builtin commands. If PATTERN IS specified, gives detailed help on all commands matching PATTERN, otherwise the list of help topics is printed. Options include: Options: -d output short description for each topic -m display usage in pseudo-manpage format -s output only a short usage synopsis for each topic matching PATTERN On some systems, when you ask for help for a built-in, you’re going to get a very long page describing all of the built-ins. You will have to scroll down until you find the section that describes the built-in you’re asking about. Which command The which command will identify the executable that represents a particular command. Notice that the which command will not provide information on built-ins because it only looks for files and built-ins are included only within the shell. $ which date /usr/bin/date $ which cd /usr/bin/cd $ which help /usr/bin/which: no help in (/home/shs/bin:.:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/home/shs/bin:/opt/pash:/home/shs) With no arguments, the which command stops looking when it finds the first march for the command name. Adding the -a option will get the command to show all of the executables when there is more than one. $ which -a python /usr/python /usr/bin/python NOTE: The which command relies on your search path to determine where to look for whatever executable you ask about. Cheat sheets When you’re beginning your Linux journey, it’s also good to have what many call a “cheat sheet” on hand – a card, sheet of paper or file that provides very brief descriptions of a group of commands and how they work. For example, you will likely see descriptions such as these: pwd displays name of current directory (full pathname of your location on the filesystem) ls lists contents of current directory ls –l lists contents of current directory with extra details (e.g., permissions, ownerships, file size) ls ~/*.txt lists all files in your home directory ending in .txt cd change directory to your home directory cd - move into the last directory you were in before changing to wherever you are now mkdir mydir makes a directory called mydir rmdir mydir removes directory called mydir. mydir must be empty touch myfile creates a file called myfile. updating the timestamp on the file if it already exists cp myfile myfile2 copies myfile to myfile2 (overwriting myfile2 if it already exists rm myfile removes file called myfile rm –f myfile removes myfile without asking for confirmation cp –r dir newdir copies the contents of dir to newdir. (the -r makes it recursive) rm –rf mydir delete directory mydir along with all OF its content without asking you for confirmation To build your own cheat sheet, you can make a list of commands in a file and then use a script like that included in this post that pulls command descriptions from the help, whatis and man pages: Building your personal Linux cheat sheets Here’s a cheat sheet that I put together quite a while ago: Linux command cheat sheet Wrap-up Linux cheat sheets are commonly used by anyone coming up to speed on the Linux command line. You’ll probably find thousands of them if you type “Linux cheat sheet” into your browser’s search bar. Related content how-to Compressing files using the zip command on Linux The zip command lets you compress files to preserve them or back them up, and you can require a password to extract the contents of a zip file. By Sandra Henry-Stocker May 13, 2024 4 mins Linux opinion NSA, FBI warn of email spoofing threat Email spoofing is acknowledged by experts as a very credible threat. By Sandra Henry-Stocker May 13, 2024 3 mins Linux how-to The logic of && and || on Linux These AND and OR equivalents can be used in scripts to determine next actions. By Sandra Henry-Stocker May 02, 2024 4 mins Linux how-to Using the apropos command on Linux By Sandra Henry-Stocker Apr 24, 2024 3 mins Linux PODCASTS VIDEOS RESOURCES EVENTS NEWSLETTERS Newsletter Promo Module Test Description for newsletter promo module. Please enter a valid email address Subscribe