Wiki > Bash Shell Commands
Legend
Everything in "<>" is to be replaced. Example: <filename> --> whatbox.txt
'..' means that more than one file can be affected with only one command.
Basic Terminal Shortcuts
Ctrl L
Clear the terminal
Ctrl D
Logout
Ctrl A
Move the cursor to the beginning of the line
Ctrl E
Move the cursor to the end of the line
Ctrl U
Delete left of the cursor
Ctrl K
Delete right of the cursor
Ctrl W
Delete the word to the left of the cursor
Ctrl Y
Paste (after Ctrl U, K, or W)
Ctrl R
Reverse search history
Ctrl Z
Suspend a process to resume it later
!!
Repeat the last command used
Shift PageUp
Scroll up in the terminal
Shift PageDown
Scroll down in the terminal
Alt .
Copy the last argument of the previous command
Basic Terminal Navigation
ls -a
List all files and folders
ls <foldername>
List files in a folder
ls -lh
Detailed list with a human-readable output
ls -l *.jpg
List only jpeg files
ls -lh <fileName>
Result for only a single file
cd <foldername>
Change directory - If the folder name has spaces, use quotes. Example: cd "Folder With Spaces"
cd ..
Go up one folder.
tip: ../../../
du -h
Disk usage of folders in a human-readable output
du -ah
Disk usage of files and folders in a human-readable output
du -sh
Only show disk usage of folders
pwd
Print the working directory
man <command>
Shows the manual for a command or program
Basic file manipulation
cat <filename>
Show the contents of a file (less, more)
head
From the top
tail
From the bottom
mkdir <foldername>
Create a new folder
Example: mkdir stuff
Example: mkdir stuff/videos/ ..
cp image.jpg newimage.jpg
Copy and rename a file
cp image.jpg <foldername>/
Copy to a folder
Example: cp image.jpg folder/image.jpg
cp -R folder1/ folder2/
Recursively (-R) copies folder1 and all of its contents into folder2.
mv file.txt documents/
Move a file to a folder
mv <folderName> <foldername2>
Move a folder into a folder
mv filename.txt filename2.txt
Rename a file
mv <foldername>/ ..
Move a folder up in the hierarchy
touch <filename>
Create or update a file
ln -s file1 file2
Symbolically link
More advanced tricks
Background a running process
If you start a process but need to close your terminal before it's completed, you may wish to background a process you're currently running. This can be achieved by executing the following three commands in sequence.
Ctrl Z
bg
disown -h
Ctrl Z
Suspends the process
bg
resumes the process, but in the background
disown -h
tells it to ignore the hangup signal (nohup)