Day 2 - Basic navigation
- Lesson video
- Complementary video: File System Hierarchy
- Complementary video: Day 2 Extras - pushd/popd/dirs
INTRO
Most computer users outside of the Linux and Unix world don't spend much time at the command-line now, but as a Linux sysadmin this is your default working environment - so you need to be skilled in it.
When you use a graphic desktop such as Windows or Apple's macOS (or even the latest Linux flavors), then increasingly you are presented with simple "places" where your stuff is stored - "Pictures" "Music" etc but if you're even moderately technical then you'll realize that underneath all this is a hierarchical "directory structure" of "folders" (e.g. C:\Users\Steve\Desktop on Windows or /Users/Steve/Desktop on macOS - and on a Desktop Linux system /home/steve/Desktop)
From now on, the course will point you to a range of good online resources for a topic, and then set you a simple set of tasks to achieve. It’s perfectly fine to google for other online resources, refer to any books you have etc - and in fact a fundamental element of the design of this course is to force you to do a bit of your own research. Even the most experienced sysadmins will do an online search to find advice for how to use commands - so the sooner you too get into that habit the better!
YOUR TASKS TODAY
- Find the documentation for the commands we used so far - demo
- Navigate between directories, then create, list, move and delete files - demo
RTFM
This is a good time to mention that one of the many advantages of Linux is that it's designed to let you know the system, to let you learn how to use it. The documentation available in form of text manuals, guides and forums is where you will spend most of your time during this journey.
Whereas proprietary systems have some free documentation, you see much more frequently the use of paid customer support to fix issues or find how a particular task can be executed. Although you can also do this with Linux (Canonical, RedHat and SuSE are examples of companies that offer support in the same fashion), this is most likely not the case. And you are here to learn, so...
Which leads us to the famous acronym RTFM. Reading the manual is the first thing you should do when you're learning a command. We will go through the many ways to obtain that information but if at the end of that search you need more insight, you can always ask a well written question in forums and other communities.
Starting with the man command. Each application installed comes with its own page in this manual, so that you can look at the page for pwd to see the full detail on the syntax like this:
man pwd
You might also try:
man cp
man mv
man grep
man ls
man man
> Note about Ubuntu Minimized - if you're using a [Local Server/VM](00-Local-Server.md):
> because this is a reduced/stripped-down version of Ubuntu Server, unfortunately the man-db
> package will not be installed by default, and you won't have the manual pages available. To
> fix this without unminimizing it, just install the required packages with
> sudo apt install man-db manpages manpages-dev
As you’ll see, these are excellent for the detailed syntax of a command, but many are extremely terse, and for others the amount of detail can be somewhat daunting!
And that's why tldr is such a powerful tool! You can install it with snap install tldr or follow their wiki for more options.
$ tldr pwd
pwd
Print name of current/working directory.More information: https://www.gnu.org/software/coreutils/pwd.
- Print the current directory:
pwd
- Print the current directory, and resolve all symlinks (i.e. show the "physical" path):
pwd -P
If you know a keyword or some description of what the command is supposed to do, you can try apropos or man -k like this:
$ apropos "working directory"
git-stash (1) - Stash the changes in a dirty working directory away
pwd (1) - print name of current/working directory
pwdx (1) - report current working directory of a process
$ man -k "working directory"
git-stash (1) - Stash the changes in a dirty working directory away
pwd (1) - print name of current/working directory
pwdx (1) - report current working directory of a process
But you'll soon find out that not every command has a manual that you can read with man. Those commands are contained within the shell itself and we call them builtin commands.
There are some overlapping (i.e. builtin commands that also have a man page) but if man does not work, we use help to display information about them.
$ man export
No manual entry for export
$ help export
export: export [-fn] [name[=value] ...] or export -p
Set export attribute for shell variables.
Marks each NAME for automatic export to the environment of subsequently
executed commands. If VALUE is supplied, assign VALUE before exporting.
Options:
-f refer to shell functions
-n remove the export property from each NAME
-p display a list of all exported variables and functions
An argument of `--' disables further option processing.
Exit Status:
Returns success unless an invalid option is given or NAME is invalid.
The best way to know if a command is a builtin command, is to check its type:
$ type export
export is a shell builtin
And lastly, info reads the documentation stored in info format.
NAVIGATE THE FILE STRUCTURE
- Start by reading the manual: man hier
- / is the "root" of a branching tree of folders (also known as directories)
- At all times you are "in" one part of the system - the command pwd ("print working directory") will show you where you are
- Generally your prompt is also configured to give you at least some of this information, so if I'm "in" the _/etc_ directory then the prompt might be steve@202.203.203.22:/etc$ or simply /etc: $
- cd moves to different areas - so cd /var/log will take you into the /var/log folder - do this and then check with pwd - and look to see if your prompt changes to reflect your location.
- You can move "up" the structure by typing cd .. ( "cee dee dot dot ") try this out by first cd'ing to /var/log/ then cd .. and then cd .. again - watching your prompt carefully, or typing pwd each time, to clarify your present working directory.
- A "relative" location is based on your present working directory - e.g. if you first cd /var then pwd will confirm that you are "in" /var, and you can move to /var/log in two ways - either by providing the full path with cd /var/log or simply the "relative" path with the command cd log
- A simple cd will always return you to your own defined "home directory", also referred to as ~ (the "tilde" character) [NB: this differs from DOS/Windows]
- What files are in a folder? The ls (list) command will give you a list of the files, and sub folders. Like many Linux commands, there are options (known as "switches") to alter the meaning of the command or the output format. Try a simple ls, then ls -l -t and then try ls -l -t -r -a
- By convention, files with a starting character of "." are considered hidden and the ls, and many other commands, will ignore them. The -a switch includes them. You should see a number of hidden files in your home directory.
- A note on switches: Generally most Linux command will accept one or more "parameters", and one or more "switches". So, when we say ls -l /var/log the "-l" is a switch to say "long format" and the "/var/log" is the "parameter". Many commands accept a large number of switches, and these can generally be combined (so from now on, use ls -ltra, rather than ls -l -t -r -a
- In your home directory type ls -ltra and look at the far left hand column - those entries with a "d" as the first character on the line are directories (folders) rather than files. They may also be shown in a different color or font - if not, then adding the "--color=auto" switch should do this (i.e. ls -ltra --color=auto)
BASIC DIRECTORY MANIPULATION
- You can make a new folder/directory with the mkdir command, so move to your home directory, type pwd to check that you are indeed in the correct place, and then create a directory, for example to create one called "test", simply type mkdir test. Now use the ls command to see the result.
- You can create even more directories, nesting inside directories, and then navigate between them with the cd command.
- When you want to move that directory inside another directory, you use mv and specify the path to move.
- To delete (or remove) a directory, use rmdir if the directory is empty or rm -r if there still any files or other directories inside of it.
BASIC FILE MANIPULATION
- You can make new empty files with the touch command, so you can explore a little more of the ls command.
- When you want to move that file to another directory, you use mv and specify the path to move.
- To delete (or remove) a file, use rm.
WRAP
Being able to move confidently around the directory structure at the command line is important, so don’t think you can skip it! However, these skills are something that you’ll be constantly using over the twenty days of the course, so don’t despair if this doesn’t immediately “click”.
EXTENSION
If this is already something that you’re very familiar with, then:
- Learn about pushd and popd to navigate around multiple directories easily. Running pushd /var/log moves you to to the /var/log, but keeps track of where you were. You can pushd more than one directory at a time. Try it out: pushd /var/log, pushd /dev, pushd /etc, pushd, popd, popd. Note how pushd with no arguments switches between the last two _pushed_ directories but
more complex navigation is also possible. Finally, cd - also moves you the last visited directory.
RESOURCES
- Difference between help, info and man command
- GNU Texinfo
- Explore the Linux file system
- Linux File System
- Simple Terminal Commands on Ubuntu
- Solaris Unix Commands
PREVIOUS DAY'S LESSON
- Day 1 - Get to know your server
Some rights reserved. Check the license terms
here
5 points
🔗 Repositorio oficial y clientes:
tldr-pages/tldr
📌 Guarda este post para tu productividad diaria en terminal.
1 like · 3 views
Tldr-pages: Collaborative cheatsheets for console commands
1 point
Stop scrolling a whole man page just to extract one .tar file.
tldr-pages/tldr (63.6k ★): short, example-first cheat sheets for console commands.
This week: pipx install tldr, then try tldr tar.
tldr-pages/tldr
Which command do you always Google? t.co
4 views
tldr gives you the five examples you actually wanted from a man page. Type tldr tar and you're done, no scrolling past three screens of flags. tldr-pages/tldr
1 like · 163 views
Stop reading 50-page Linux man pages in 2026 🛑
Meet TLDR: collaborative, instant cheatsheets for console commands with 51k+ stars.
Practical copy-paste examples for tar, ffmpeg, docker & git in <1ms.
⚡ toolspirehub.com
⭐ tldr-pages/tldr
#linux #coding #devops
3 likes
Built on simple Markdown files for maximum speed and zero bloat. Developers love how easily they can contribute fixes or read workflows right from the CLI.
🔖 Bookmark this before you lose it.
What's your go-to...
🔗 tldr-pages/tldr
3 likes · 1 view
Day 2 - Basic navigation
- Lesson video
- Complementary video: File System Hierarchy
- Complementary video: Day 2 Extras - pushd/popd/dirs
INTRO
Most computer users outside of the Linux and Unix world don't spend much time at the command-line now, but as a Linux sysadmin this is your default working environment - so you need to be skilled in it.
When you use a graphic desktop such as Windows or Apple's macOS (or even the latest Linux flavors), then increasingly you are presented with simple "places" where your stuff is stored - "Pictures" "Music" etc but if you're even moderately technical then you'll realize that underneath all this is a hierarchical "directory structure" of "folders" (e.g. C:\Users\Steve\Desktop on Windows or /Users/Steve/Desktop on macOS - and on a Desktop Linux system /home/steve/Desktop)
From now on, the course will point you to a range of good online resources for a topic, and then set you a simple set of tasks to achieve. It’s perfectly fine to google for other online resources, refer to any books you have etc - and in fact a fundamental element of the design of this course is to force you to do a bit of your own research. Even the most experienced sysadmins will do an online search to find advice for how to use commands - so the sooner you too get into that habit the better!
YOUR TASKS TODAY
- Find the documentation for the commands we used so far - demo
- Navigate between directories, then create, list, move and delete files - demo
RTFM
This is a good time to mention that one of the many advantages of Linux is that it's designed to let you know the system, to let you learn how to use it. The documentation available in form of text manuals, guides and forums is where you will spend most of your time during this journey.
Whereas proprietary systems have some free documentation, you see much more frequently the use of paid customer support to fix issues or find how a particular task can be executed. Although you can also do this with Linux (Canonical, RedHat and SuSE are examples of companies that offer support in the same fashion), this is most likely not the case. And you are here to learn, so...
Which leads us to the famous acronym RTFM. Reading the manual is the first thing you should do when you're learning a command. We will go through the many ways to obtain that information but if at the end of that search you need more insight, you can always ask a well written question in forums and other communities.
Starting with the man command. Each application installed comes with its own page in this manual, so that you can look at the page for pwd to see the full detail on the syntax like this:
man pwd
You might also try:
man cp
man mv
man grep
man ls
man man
> Note about Ubuntu Minimized - if you're using a [Local Server/VM](00-Local-Server.md):
> because this is a reduced/stripped-down version of Ubuntu Server, unfortunately the man-db
> package will not be installed by default, and you won't have the manual pages available. To
> fix this without unminimizing it, just install the required packages with
> sudo apt install man-db manpages manpages-dev
As you’ll see, these are excellent for the detailed syntax of a command, but many are extremely terse, and for others the amount of detail can be somewhat daunting!
And that's why tldr is such a powerful tool! You can install it with snap install tldr or follow their wiki for more options.
$ tldr pwd
pwd
Print name of current/working directory.More information: https://www.gnu.org/software/coreutils/pwd.
- Print the current directory:
pwd
- Print the current directory, and resolve all symlinks (i.e. show the "physical" path):
pwd -P
If you know a keyword or some description of what the command is supposed to do, you can try apropos or man -k like this:
$ apropos "working directory"
git-stash (1) - Stash the changes in a dirty working directory away
pwd (1) - print name of current/working directory
pwdx (1) - report current working directory of a process
$ man -k "working directory"
git-stash (1) - Stash the changes in a dirty working directory away
pwd (1) - print name of current/working directory
pwdx (1) - report current working directory of a process
But you'll soon find out that not every command has a manual that you can read with man. Those commands are contained within the shell itself and we call them builtin commands.
There are some overlapping (i.e. builtin commands that also have a man page) but if man does not work, we use help to display information about them.
$ man export
No manual entry for export
$ help export
export: export [-fn] [name[=value] ...] or export -p
Set export attribute for shell variables.
Marks each NAME for automatic export to the environment of subsequently
executed commands. If VALUE is supplied, assign VALUE before exporting.
Options:
-f refer to shell functions
-n remove the export property from each NAME
-p display a list of all exported variables and functions
An argument of `--' disables further option processing.
Exit Status:
Returns success unless an invalid option is given or NAME is invalid.
The best way to know if a command is a builtin command, is to check its type:
$ type export
export is a shell builtin
And lastly, info reads the documentation stored in info format.
NAVIGATE THE FILE STRUCTURE
- Start by reading the manual: man hier
- / is the "root" of a branching tree of folders (also known as directories)
- At all times you are "in" one part of the system - the command pwd ("print working directory") will show you where you are
- Generally your prompt is also configured to give you at least some of this information, so if I'm "in" the _/etc_ directory then the prompt might be steve@202.203.203.22:/etc$ or simply /etc: $
- cd moves to different areas - so cd /var/log will take you into the /var/log folder - do this and then check with pwd - and look to see if your prompt changes to reflect your location.
- You can move "up" the structure by typing cd .. ( "cee dee dot dot ") try this out by first cd'ing to /var/log/ then cd .. and then cd .. again - watching your prompt carefully, or typing pwd each time, to clarify your present working directory.
- A "relative" location is based on your present working directory - e.g. if you first cd /var then pwd will confirm that you are "in" /var, and you can move to /var/log in two ways - either by providing the full path with cd /var/log or simply the "relative" path with the command cd log
- A simple cd will always return you to your own defined "home directory", also referred to as ~ (the "tilde" character) [NB: this differs from DOS/Windows]
- What files are in a folder? The ls (list) command will give you a list of the files, and sub folders. Like many Linux commands, there are options (known as "switches") to alter the meaning of the command or the output format. Try a simple ls, then ls -l -t and then try ls -l -t -r -a
- By convention, files with a starting character of "." are considered hidden and the ls, and many other commands, will ignore them. The -a switch includes them. You should see a number of hidden files in your home directory.
- A note on switches: Generally most Linux command will accept one or more "parameters", and one or more "switches". So, when we say ls -l /var/log the "-l" is a switch to say "long format" and the "/var/log" is the "parameter". Many commands accept a large number of switches, and these can generally be combined (so from now on, use ls -ltra, rather than ls -l -t -r -a
- In your home directory type ls -ltra and look at the far left hand column - those entries with a "d" as the first character on the line are directories (folders) rather than files. They may also be shown in a different color or font - if not, then adding the "--color=auto" switch should do this (i.e. ls -ltra --color=auto)
BASIC DIRECTORY MANIPULATION
- You can make a new folder/directory with the mkdir command, so move to your home directory, type pwd to check that you are indeed in the correct place, and then create a directory, for example to create one called "test", simply type mkdir test. Now use the ls command to see the result.
- You can create even more directories, nesting inside directories, and then navigate between them with the cd command.
- When you want to move that directory inside another directory, you use mv and specify the path to move.
- To delete (or remove) a directory, use rmdir if the directory is empty or rm -r if there still any files or other directories inside of it.
BASIC FILE MANIPULATION
- You can make new empty files with the touch command, so you can explore a little more of the ls command.
- When you want to move that file to another directory, you use mv and specify the path to move.
- To delete (or remove) a file, use rm.
WRAP
Being able to move confidently around the directory structure at the command line is important, so don’t think you can skip it! However, these skills are something that you’ll be constantly using over the twenty days of the course, so don’t despair if this doesn’t immediately “click”.
EXTENSION
If this is already something that you’re very familiar with, then:
- Learn about pushd and popd to navigate around multiple directories easily. Running pushd /var/log moves you to to the /var/log, but keeps track of where you were. You can pushd more than one directory at a time. Try it out: pushd /var/log, pushd /dev, pushd /etc, pushd, popd, popd. Note how pushd with no arguments switches between the last two _pushed_ directories but
more complex navigation is also possible. Finally, cd - also moves you the last visited directory.
RESOURCES
- Difference between help, info and man command
- GNU Texinfo
- Explore the Linux file system
- Linux File System
- Simple Terminal Commands on Ubuntu
- Solaris Unix Commands
PREVIOUS DAY'S LESSON
- Day 1 - Get to know your server
Some rights reserved. Check the license terms
here
7 points
Mentions
Day 2 - Basic navigation - Lesson video - Complementary video: File System Hierarchy - Complementary video: Day 2 Extras - pushd/popd/dirs INTRO Most computer users outside of the Linux and Unix world don't spend much time at the command-line now, but as a Linux sysadmin this is your default working environment - so you need to be skilled in it. When you use a graphic desktop such as Windows or Apple's macOS (or even the latest Linux flavors), then increasingly you are presented with simple "places" where your stuff is stored - "Pictures" "Music" etc but if you're even moderately technical then you'll realize that underneath all this is a hierarchical "directory structure" of "folders" (e.g. C:\Users\Steve\Desktop on Windows or /Users/Steve/Desktop on macOS - and on a Desktop Linux system /home/steve/Desktop) From now on, the course will point you to a range of good online resources for a topic, and then set you a simple set of tasks to achieve. It’s perfectly fine to google for other online resources, refer to any books you have etc - and in fact a fundamental element of the design of this course is to force you to do a bit of your own research. Even the most experienced sysadmins will do an online search to find advice for how to use commands - so the sooner you too get into that habit the better! YOUR TASKS TODAY - Find the documentation for the commands we used so far - demo - Navigate between directories, then create, list, move and delete files - demo RTFM This is a good time to mention that one of the many advantages of Linux is that it's designed to let you know the system, to let you learn how to use it. The documentation available in form of text manuals, guides and forums is where you will spend most of your time during this journey. Whereas proprietary systems have some free documentation, you see much more frequently the use of paid customer support to fix issues or find how a particular task can be executed. Although you can also do this with Linux (Canonical, RedHat and SuSE are examples of companies that offer support in the same fashion), this is most likely not the case. And you are here to learn, so... Which leads us to the famous acronym RTFM. Reading the manual is the first thing you should do when you're learning a command. We will go through the many ways to obtain that information but if at the end of that search you need more insight, you can always ask a well written question in forums and other communities. Starting with the man command. Each application installed comes with its own page in this manual, so that you can look at the page for pwd to see the full detail on the syntax like this: man pwd You might also try: man cp man mv man grep man ls man man > Note about Ubuntu Minimized - if you're using a [Local Server/VM](00-Local-Server.md): > because this is a reduced/stripped-down version of Ubuntu Server, unfortunately the man-db > package will not be installed by default, and you won't have the manual pages available. To > fix this without unminimizing it, just install the required packages with > sudo apt install man-db manpages manpages-dev As you’ll see, these are excellent for the detailed syntax of a command, but many are extremely terse, and for others the amount of detail can be somewhat daunting! And that's why tldr is such a powerful tool! You can install it with snap install tldr or follow their wiki for more options. $ tldr pwd pwd Print name of current/working directory.More information: https://www.gnu.org/software/coreutils/pwd. - Print the current directory: pwd - Print the current directory, and resolve all symlinks (i.e. show the "physical" path): pwd -P If you know a keyword or some description of what the command is supposed to do, you can try apropos or man -k like this: $ apropos "working directory" git-stash (1) - Stash the changes in a dirty working directory away pwd (1) - print name of current/working directory pwdx (1) - report current working directory of a process $ man -k "working directory" git-stash (1) - Stash the changes in a dirty working directory away pwd (1) - print name of current/working directory pwdx (1) - report current working directory of a process But you'll soon find out that not every command has a manual that you can read with man. Those commands are contained within the shell itself and we call them builtin commands. There are some overlapping (i.e. builtin commands that also have a man page) but if man does not work, we use help to display information about them. $ man export No manual entry for export $ help export export: export [-fn] [name[=value] ...] or export -p Set export attribute for shell variables. Marks each NAME for automatic export to the environment of subsequently executed commands. If VALUE is supplied, assign VALUE before exporting. Options: -f refer to shell functions -n remove the export property from each NAME -p display a list of all exported variables and functions An argument of `--' disables further option processing. Exit Status: Returns success unless an invalid option is given or NAME is invalid. The best way to know if a command is a builtin command, is to check its type: $ type export export is a shell builtin And lastly, info reads the documentation stored in info format. NAVIGATE THE FILE STRUCTURE - Start by reading the manual: man hier - / is the "root" of a branching tree of folders (also known as directories) - At all times you are "in" one part of the system - the command pwd ("print working directory") will show you where you are - Generally your prompt is also configured to give you at least some of this information, so if I'm "in" the _/etc_ directory then the prompt might be steve@202.203.203.22:/etc$ or simply /etc: $ - cd moves to different areas - so cd /var/log will take you into the /var/log folder - do this and then check with pwd - and look to see if your prompt changes to reflect your location. - You can move "up" the structure by typing cd .. ( "cee dee dot dot ") try this out by first cd'ing to /var/log/ then cd .. and then cd .. again - watching your prompt carefully, or typing pwd each time, to clarify your present working directory. - A "relative" location is based on your present working directory - e.g. if you first cd /var then pwd will confirm that you are "in" /var, and you can move to /var/log in two ways - either by providing the full path with cd /var/log or simply the "relative" path with the command cd log - A simple cd will always return you to your own defined "home directory", also referred to as ~ (the "tilde" character) [NB: this differs from DOS/Windows] - What files are in a folder? The ls (list) command will give you a list of the files, and sub folders. Like many Linux commands, there are options (known as "switches") to alter the meaning of the command or the output format. Try a simple ls, then ls -l -t and then try ls -l -t -r -a - By convention, files with a starting character of "." are considered hidden and the ls, and many other commands, will ignore them. The -a switch includes them. You should see a number of hidden files in your home directory. - A note on switches: Generally most Linux command will accept one or more "parameters", and one or more "switches". So, when we say ls -l /var/log the "-l" is a switch to say "long format" and the "/var/log" is the "parameter". Many commands accept a large number of switches, and these can generally be combined (so from now on, use ls -ltra, rather than ls -l -t -r -a - In your home directory type ls -ltra and look at the far left hand column - those entries with a "d" as the first character on the line are directories (folders) rather than files. They may also be shown in a different color or font - if not, then adding the "--color=auto" switch should do this (i.e. ls -ltra --color=auto) BASIC DIRECTORY MANIPULATION - You can make a new folder/directory with the mkdir command, so move to your home directory, type pwd to check that you are indeed in the correct place, and then create a directory, for example to create one called "test", simply type mkdir test. Now use the ls command to see the result. - You can create even more directories, nesting inside directories, and then navigate between them with the cd command. - When you want to move that directory inside another directory, you use mv and specify the path to move. - To delete (or remove) a directory, use rmdir if the directory is empty or rm -r if there still any files or other directories inside of it. BASIC FILE MANIPULATION - You can make new empty files with the touch command, so you can explore a little more of the ls command. - When you want to move that file to another directory, you use mv and specify the path to move. - To delete (or remove) a file, use rm. WRAP Being able to move confidently around the directory structure at the command line is important, so don’t think you can skip it! However, these skills are something that you’ll be constantly using over the twenty days of the course, so don’t despair if this doesn’t immediately “click”. EXTENSION If this is already something that you’re very familiar with, then: - Learn about pushd and popd to navigate around multiple directories easily. Running pushd /var/log moves you to to the /var/log, but keeps track of where you were. You can pushd more than one directory at a time. Try it out: pushd /var/log, pushd /dev, pushd /etc, pushd, popd, popd. Note how pushd with no arguments switches between the last two _pushed_ directories but more complex navigation is also possible. Finally, cd - also moves you the last visited directory. RESOURCES - Difference between help, info and man command - GNU Texinfo - Explore the Linux file system - Linux File System - Simple Terminal Commands on Ubuntu - Solaris Unix Commands PREVIOUS DAY'S LESSON - Day 1 - Get to know your server Some rights reserved. Check the license terms here
🔗 Repositorio oficial y clientes: tldr-pages/tldr 📌 Guarda este post para tu productividad diaria en terminal.
Tldr-pages: Collaborative cheatsheets for console commands
Stop scrolling a whole man page just to extract one .tar file. tldr-pages/tldr (63.6k ★): short, example-first cheat sheets for console commands. This week: pipx install tldr, then try tldr tar. tldr-pages/tldr Which command do you always Google? t.co
tldr gives you the five examples you actually wanted from a man page. Type tldr tar and you're done, no scrolling past three screens of flags. tldr-pages/tldr
Stop reading 50-page Linux man pages in 2026 🛑 Meet TLDR: collaborative, instant cheatsheets for console commands with 51k+ stars. Practical copy-paste examples for tar, ffmpeg, docker & git in <1ms. ⚡ toolspirehub.com ⭐ tldr-pages/tldr #linux #coding #devops
Built on simple Markdown files for maximum speed and zero bloat. Developers love how easily they can contribute fixes or read workflows right from the CLI. 🔖 Bookmark this before you lose it. What's your go-to... 🔗 tldr-pages/tldr
Day 2 - Basic navigation - Lesson video - Complementary video: File System Hierarchy - Complementary video: Day 2 Extras - pushd/popd/dirs INTRO Most computer users outside of the Linux and Unix world don't spend much time at the command-line now, but as a Linux sysadmin this is your default working environment - so you need to be skilled in it. When you use a graphic desktop such as Windows or Apple's macOS (or even the latest Linux flavors), then increasingly you are presented with simple "places" where your stuff is stored - "Pictures" "Music" etc but if you're even moderately technical then you'll realize that underneath all this is a hierarchical "directory structure" of "folders" (e.g. C:\Users\Steve\Desktop on Windows or /Users/Steve/Desktop on macOS - and on a Desktop Linux system /home/steve/Desktop) From now on, the course will point you to a range of good online resources for a topic, and then set you a simple set of tasks to achieve. It’s perfectly fine to google for other online resources, refer to any books you have etc - and in fact a fundamental element of the design of this course is to force you to do a bit of your own research. Even the most experienced sysadmins will do an online search to find advice for how to use commands - so the sooner you too get into that habit the better! YOUR TASKS TODAY - Find the documentation for the commands we used so far - demo - Navigate between directories, then create, list, move and delete files - demo RTFM This is a good time to mention that one of the many advantages of Linux is that it's designed to let you know the system, to let you learn how to use it. The documentation available in form of text manuals, guides and forums is where you will spend most of your time during this journey. Whereas proprietary systems have some free documentation, you see much more frequently the use of paid customer support to fix issues or find how a particular task can be executed. Although you can also do this with Linux (Canonical, RedHat and SuSE are examples of companies that offer support in the same fashion), this is most likely not the case. And you are here to learn, so... Which leads us to the famous acronym RTFM. Reading the manual is the first thing you should do when you're learning a command. We will go through the many ways to obtain that information but if at the end of that search you need more insight, you can always ask a well written question in forums and other communities. Starting with the man command. Each application installed comes with its own page in this manual, so that you can look at the page for pwd to see the full detail on the syntax like this: man pwd You might also try: man cp man mv man grep man ls man man > Note about Ubuntu Minimized - if you're using a [Local Server/VM](00-Local-Server.md): > because this is a reduced/stripped-down version of Ubuntu Server, unfortunately the man-db > package will not be installed by default, and you won't have the manual pages available. To > fix this without unminimizing it, just install the required packages with > sudo apt install man-db manpages manpages-dev As you’ll see, these are excellent for the detailed syntax of a command, but many are extremely terse, and for others the amount of detail can be somewhat daunting! And that's why tldr is such a powerful tool! You can install it with snap install tldr or follow their wiki for more options. $ tldr pwd pwd Print name of current/working directory.More information: https://www.gnu.org/software/coreutils/pwd. - Print the current directory: pwd - Print the current directory, and resolve all symlinks (i.e. show the "physical" path): pwd -P If you know a keyword or some description of what the command is supposed to do, you can try apropos or man -k like this: $ apropos "working directory" git-stash (1) - Stash the changes in a dirty working directory away pwd (1) - print name of current/working directory pwdx (1) - report current working directory of a process $ man -k "working directory" git-stash (1) - Stash the changes in a dirty working directory away pwd (1) - print name of current/working directory pwdx (1) - report current working directory of a process But you'll soon find out that not every command has a manual that you can read with man. Those commands are contained within the shell itself and we call them builtin commands. There are some overlapping (i.e. builtin commands that also have a man page) but if man does not work, we use help to display information about them. $ man export No manual entry for export $ help export export: export [-fn] [name[=value] ...] or export -p Set export attribute for shell variables. Marks each NAME for automatic export to the environment of subsequently executed commands. If VALUE is supplied, assign VALUE before exporting. Options: -f refer to shell functions -n remove the export property from each NAME -p display a list of all exported variables and functions An argument of `--' disables further option processing. Exit Status: Returns success unless an invalid option is given or NAME is invalid. The best way to know if a command is a builtin command, is to check its type: $ type export export is a shell builtin And lastly, info reads the documentation stored in info format. NAVIGATE THE FILE STRUCTURE - Start by reading the manual: man hier - / is the "root" of a branching tree of folders (also known as directories) - At all times you are "in" one part of the system - the command pwd ("print working directory") will show you where you are - Generally your prompt is also configured to give you at least some of this information, so if I'm "in" the _/etc_ directory then the prompt might be steve@202.203.203.22:/etc$ or simply /etc: $ - cd moves to different areas - so cd /var/log will take you into the /var/log folder - do this and then check with pwd - and look to see if your prompt changes to reflect your location. - You can move "up" the structure by typing cd .. ( "cee dee dot dot ") try this out by first cd'ing to /var/log/ then cd .. and then cd .. again - watching your prompt carefully, or typing pwd each time, to clarify your present working directory. - A "relative" location is based on your present working directory - e.g. if you first cd /var then pwd will confirm that you are "in" /var, and you can move to /var/log in two ways - either by providing the full path with cd /var/log or simply the "relative" path with the command cd log - A simple cd will always return you to your own defined "home directory", also referred to as ~ (the "tilde" character) [NB: this differs from DOS/Windows] - What files are in a folder? The ls (list) command will give you a list of the files, and sub folders. Like many Linux commands, there are options (known as "switches") to alter the meaning of the command or the output format. Try a simple ls, then ls -l -t and then try ls -l -t -r -a - By convention, files with a starting character of "." are considered hidden and the ls, and many other commands, will ignore them. The -a switch includes them. You should see a number of hidden files in your home directory. - A note on switches: Generally most Linux command will accept one or more "parameters", and one or more "switches". So, when we say ls -l /var/log the "-l" is a switch to say "long format" and the "/var/log" is the "parameter". Many commands accept a large number of switches, and these can generally be combined (so from now on, use ls -ltra, rather than ls -l -t -r -a - In your home directory type ls -ltra and look at the far left hand column - those entries with a "d" as the first character on the line are directories (folders) rather than files. They may also be shown in a different color or font - if not, then adding the "--color=auto" switch should do this (i.e. ls -ltra --color=auto) BASIC DIRECTORY MANIPULATION - You can make a new folder/directory with the mkdir command, so move to your home directory, type pwd to check that you are indeed in the correct place, and then create a directory, for example to create one called "test", simply type mkdir test. Now use the ls command to see the result. - You can create even more directories, nesting inside directories, and then navigate between them with the cd command. - When you want to move that directory inside another directory, you use mv and specify the path to move. - To delete (or remove) a directory, use rmdir if the directory is empty or rm -r if there still any files or other directories inside of it. BASIC FILE MANIPULATION - You can make new empty files with the touch command, so you can explore a little more of the ls command. - When you want to move that file to another directory, you use mv and specify the path to move. - To delete (or remove) a file, use rm. WRAP Being able to move confidently around the directory structure at the command line is important, so don’t think you can skip it! However, these skills are something that you’ll be constantly using over the twenty days of the course, so don’t despair if this doesn’t immediately “click”. EXTENSION If this is already something that you’re very familiar with, then: - Learn about pushd and popd to navigate around multiple directories easily. Running pushd /var/log moves you to to the /var/log, but keeps track of where you were. You can pushd more than one directory at a time. Try it out: pushd /var/log, pushd /dev, pushd /etc, pushd, popd, popd. Note how pushd with no arguments switches between the last two _pushed_ directories but more complex navigation is also possible. Finally, cd - also moves you the last visited directory. RESOURCES - Difference between help, info and man command - GNU Texinfo - Explore the Linux file system - Linux File System - Simple Terminal Commands on Ubuntu - Solaris Unix Commands PREVIOUS DAY'S LESSON - Day 1 - Get to know your server Some rights reserved. Check the license terms here