# A (Live) List of Shell Commands and Tools Any of these commands can be prefixed with `sudo` in order to run them as a system administrator. Some of them, such as `apt`, can only be run as an administrator. All programs with an asterisk (`*`) next to them do not come pre-installed in the [Codespaces Desktop](https://github.com/dianalin2/desktop). ## Common Linux Commands | Command | Description | | -------- | -------- | | `ls` | List directory contents | | `pwd` | Print the full path of the current (working) directory | | `cd` | Move to another directory | | `cat` | Print the contents of a file | | `cp` | Copy a file/folder from one location to another | | `mv` | Move a file/folder from location to another | | `mkdir` | Create a directory | | `rm` | Delete files/folders | | `clear` | Clear the terminal display | | `./<program>` | Run an executable file in the current directory | ## Package Managers | Command | Description | | -------- | -------- | | `apt install` | Install a package on a Debian-based distribution (including Ubuntu) | | `pip install` | Install a Python package | ## Editing Files | Command | Description | | -------- | -------- | | `nano` | Open a (relatively) user-friendly command line text editor | | `vim`* | Open a less user-friendly but very powerful command line text editor | ## Connecting to Servers | Command | Description | | -------- | -------- | | `nc` | Establish a connection to a server | | `ssh` | Connect to a remote computer to access a shell on that computer | | `curl` | Make an HTTP request | | `wget` | Make an HTTP request and download the response body | ## File Permissions | Command | Description | | -------- | -------- | | `chmod` | Change the access permissions of a file | | `chown` | Change the file owner of a file | | `chgrp` | Change the group owner of a file | ## File Forensics | Command | Description | | -------- | -------- | | `grep` | Search for a file that has contents that matches a specific pattern of characters | | `file` | Print the file type of a file based on its contents, not the file extension | | `strings` | Print the "printable" bits of text of a file out | | `find` | Print out the files that match a certain specified criteria |