If you\u2019re fairly new to Linux, you might need some help getting started on the command line. But you made it here, so let\u2019s run through a number of ways that you can get comfortable and up to speed fairly quickly.\nMan pages\nEvery Linux command should have a "man page" (i.e., manual page) \u2013 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 \u201cman date\u201d. It should among other things, show you the format of the date command like this:\nSYNOPSIS\n date [OPTION]... [+FORMAT]\n date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]\n\nIn syntactical descriptions such as this, anything in square brackets is optional. You can use the date command simply by typing \u201cdate\u201d and nothing more. The vertical bars in the first square-bracketed portion of the syntax shown mean \u201cor\u201d, so you select from the options shown if you want to see the date and time in \u201cuniversal time\u201d (the primary time standard by which the world regulates clocks and time).\n$ date -u\nMon Jul 8 06:03:21 PM UTC 2023\nMan 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:\nOptions:\n -d output short description for each topic\n -s output only a short usage synopsis for each topic matching PATTERN\n -u, --utc, --universal\n print or set Coordinated Universal Time (UTC)\n\nNOTE: Most any command that does not have its own man page is likely a \u201cbuilt-in\u201d \u2013 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.\nApropos command\nThe 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.\n$ apropos password\nchage (1) - change user password expiry information\ntpm2_policypassword (1) - Enables binding a policy to the authorization value of the authorized TPM object.\ngit-credential-cache (1) - Helper to temporarily store passwords in memory\ngrub2-mkpasswd-pbkdf2 (1) - generate hashed password for GRUB\nhtdbm (1) - Manipulate DBM password databases\nlchage (1) - Display or change user password policy\nlpasswd (1) - Change group or user password\nopenssl-passwd (1ossl) - compute password hashes\nopenssl-srp (1ossl) - maintain SRP password file\npwmake (1) - simple tool for generating random relatively easily pronounceable passwords\npwscore (1) - simple configurable tool for checking quality of a password\nsecret-tool (1) - Store and retrieve passwords\nsshpass (1) - noninteractive ssh password provider\nsystemd-ask-password (1) - Query the user for a system password\nsystemd-tty-ask-password-agent (1) - List or process pending systemd password requests\nvncpasswd (1) - change the VNC password\n\nHelp command\nThe 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.\n$ help help\nhelp: help [-dms] [pattern ...]\n Display information about builtin commands.\n\n Displays brief summaries of builtin commands. If PATTERN IS\n specified, gives detailed help on all commands matching PATTERN,\n otherwise the list of help topics is printed.\n\nOptions include:\n Options:\n -d output short description for each topic\n -m display usage in pseudo-manpage format\n -s output only a short usage synopsis for each topic matching\n PATTERN\n\nOn some systems, when you ask for help for a built-in, you\u2019re 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\u2019re asking about.\nWhich command\nThe 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.\n$ which date\n\/usr\/bin\/date\n$ which cd\n\/usr\/bin\/cd\n$ which help\n\/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)\n\nWith 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.\n$ which -a python\n\/usr\/python\n\/usr\/bin\/python\n\nNOTE: The which command relies on your search path to determine where to look for whatever executable you ask about.\nCheat sheets\nWhen you\u2019re beginning your Linux journey, it\u2019s also good to have what many call a \u201ccheat sheet\u201d on hand \u2013 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:\npwd\t\t\tdisplays name of current directory (full pathname of your location on the filesystem)\nls\t\t\tlists contents of current directory\nls \u2013l\t\t\tlists contents of current directory with extra details (e.g., permissions, ownerships, file size)\nls ~\/*.txt\t\tlists all files in your home directory ending in .txt\ncd\t\t\tchange directory to your home directory\ncd -\t\t\tmove into the last directory you were in before changing to wherever you are now\nmkdir mydir\t\tmakes a directory called mydir\nrmdir mydir\t\tremoves directory called mydir. mydir must be empty\ntouch myfile\t\tcreates a file called myfile. updating the timestamp on the file if it already exists\ncp myfile myfile2\tcopies myfile to myfile2 (overwriting myfile2 if it already exists\nrm myfile removes\tfile called myfile\nrm \u2013f myfile\t\tremoves myfile without asking for confirmation\ncp \u2013r dir newdir\tcopies the contents of dir to newdir. (the -r makes it recursive)\nrm \u2013rf mydir\t\tdelete directory mydir along with all OF its content without asking you for confirmation\n\nTo 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:\nBuilding your personal Linux cheat sheets\nHere\u2019s a cheat sheet that I put together quite a while ago:\nLinux command cheat sheet\nWrap-up\nLinux cheat sheets are commonly used by anyone coming up to speed on the Linux command line. You\u2019ll probably find thousands of them if you type \u201cLinux cheat sheet\u201d into your browser\u2019s search bar.