Introduction
The Linux command line is a powerful tool for managing files, processes, and system settings. This cheat sheet covers essential commands and shortcuts to help you navigate and utilize the command line efficiently.
Bash Commands
uname -a # Show system and kernel
head -n1 /etc/issue # Show distribution
mount # Show mounted filesystems
date # Show system date
uptime # Show uptime
whoami # Show your username
man command # Show manual for command
Bash Shortcuts
CTRL-c # Stop current command
CTRL-z # Sleep program
CTRL-a # Go to start of line
CTRL-e # Go to end of line
CTRL-u # Cut from start of line
CTRL-k # Cut to end of line
CTRL-r # Search history
!! # Repeat last command
!abc # Run last command starting with abc
!abc:p # Print last command starting with abc
!$ # Last argument of previous command
!* # All arguments of previous command
^abc^123 # Run previous command, replacing abc with 123
Bash Variables
env # Show environment variables
echo $NAME # Output value of $NAME
export NAME=value # Set $NAME to value
$PATH # Executable search path
$HOME # Home directory
$SHELL # Current shell
IO Redirection
command < file # Read input of command from file
command > file # Write output of command to file
command > /dev/null # Discard output of command
command >> file # Append output to file
command1 | command2 # Pipe output of command1 to command2
Directory Operations
pwd # Show current directory
mkdir dir # Make directory dir
cd dir # Change directory to dir
cd .. # Go up a directory
ls # List files
ls Options
-a # Show all (including hidden)
-R # Recursive list
-r # Reverse order
-t # Sort by last modified
-S # Sort by file size
-l # Long listing format
-1 # One file per line
-m # Comma-separated output
-Q # Quoted output
Search Files
grep pattern files # Search for pattern in files
grep -i pattern files # Case insensitive search
grep -r pattern dir # Recursive search
grep -v pattern files # Inverted search
find /dir/ -name name* # Find files starting with name in dir
find /dir/ -user name # Find files owned by name in dir
find /dir/ -mmin num # Find files modified less than num minutes ago in dir
whereis command # Find binary/source/manual for command
locate file # Find file (quick search of system index)
File Operations
touch file1 # Create file1
cat file1 file2 # Concatenate files and output
more file1 # View file1 with pagination
less file1 # View file1 with backward movement
file file1 # Get type of file1
cp file1 file2 # Copy file1 to file2
mv file1 file2 # Move file1 to file2
rm file1 # Delete file1
head file1 # Show first 10 lines of file1
tail file1 # Show last 10 lines of file1
tail -f file1 # Output last lines of file1 as it changes
Process Management
ps # Show snapshot of processes
top # Show real-time processes
kill pid # Kill process with id pid
pkill name # Kill process with name name
killall name # Kill all processes with names beginning with name
Nano Shortcuts
Files
Ctrl-R # Read file
Ctrl-O # Save file
Ctrl-X # Close file
Cut and Paste
ALT-A # Start marking text
CTRL-K # Cut marked text or line
CTRL-U # Paste text
Navigate File
ALT-/ # End of file
CTRL-A # Beginning of line
CTRL-E # End of line
CTRL-C # Show line number
CTRL-_ # Go to line number
Search File
CTRL-W # Find
ALT-W # Find next
CTRL-\ # Search and replace
Screen Shortcuts
screen # Start a screen session
screen -r # Resume a screen session
screen -list # Show your current screen sessions
CTRL-A # Activate commands for screen
CTRL-A c # Create a new instance of terminal
CTRL-A n # Go to the next instance of terminal
CTRL-A p # Go to the previous instance of terminal
CTRL-A " # Show current instances of terminals
CTRL-A A # Rename the current instance of terminal
File Permissions
chmod 775 file # Change mode of file to 775
chmod -R 600 folder # Recursively chmod folder to 600
chown user:group file # Change file owner to user and group to group
File Permission Numbers
The first digit is the owner permission, the second the group, and the third for everyone. Calculate each of the three permission digits by adding the numeric values of the permissions below:
4 # read (r)
2 # write (w)
1 # execute (x)
Conclusion
Understanding and utilizing these commands and shortcuts can greatly enhance your efficiency and capability when working with the Linux command line. Bookmark this cheat sheet for quick reference, and don't hesitate to explore further and practice these commands to become proficient in managing your Linux