# Common Commands ##### **Help Commands**
**Command** **Description**
compgen -cShow all commands
compgen -aShow all alias commands
compgen -A functionShow available functions
man <command> Show manual page of a command (more info than --help)
<command> --help Show help page of a command (less info than man command)
<command> --version Show version of a command
##### **File & Folder Commands**
**Command****Description**
ls -lah List files/folders in current directory (+infos)
mkdir newdir Create a new folder
cd somefolder Change/switch to another directory
cd /mnt/change/switch to another drive
cp file.txt file-copy.txt Copy a file
mv file.txt file-renamed.txt Rename a file
mv file.txt /tmp Move file to another folder
rm file.txt Remove a file
rm -rf folder Remove entire folder (recursive)
ln -s original target Create a symlink
pwd Show path of current folder
chown <arguments> <user>:<group> file.txtChange Owner and Group of file (use -R for rekursive)
##### **Search & String Commands**
**Command****Description**
find . -name "file.txt" Search for a file (recursive)
find . -name "\*.txt" Search for all txt files
grep -rin "search string" Search for a string in current folder (recursive)
grep -rin "search string" | cut -c 1-100 Search for a string in current folder + limit output of string
sed -Ei 's/someString/newString/g' file.txt Replace "someString" with "newString" in a file
head file.txt Show first 10 lines of file
tail file.txt Show last 10 lines of file
cat file.txt Show full content of file
cat file.txt | grep "search string" Pipe output of "cat" command to grep + filter string
##### **Terminal Search, Shortcuts & Autocompletion**
**Command****Description**
Ctrl + aJump to beginning of line
Ctrl + eJump to end of line
Ctrl + Arrow LeftJump word backward
Ctrl + Arrow RightJump word forward
Ctrl + wRemove word backward
Alt + w Remove word forward
Ctrl + pGo through command line history backward
Ctrl + nGo through command line history forward
Ctrl + rReverse Search in command history: \- Type in something to search \- Type Enter to execute the searched command \- Type "Ctrl + r" to search further in reverse \- Type "Ctrl + s" to search further in inverse \- Tip: In only a few cases it makes sense to use the inverse search (Ctrl + s) from the beginning, but usually you want to search in reverse from the latest history commands
Ctrl + s Same as "Ctrl + r" but inverse (starts from the beginning of the history)
Ctrl + fAutocomplete a suggestion ([Fish Shell](https://fishshell.com/ "Fish Shell") only)
##### **OS Helper Commands**
**Command****Description**
du -csh . Show size of current folder
df -h Show partitions / drives
lsb\_release -a Show OS Version / Informations
##### **Remote / Host Commands**
**Command****Description**
wget https://www.somewhere495848.com/test.txt Download a file
curl -LI https://www.google.com Show Header Informations of URL
whois <host> Show NS, DNS, Register about a host (e.g.: whois google.com)
host <host> DNS Lookup of a host (e.g.: host google.com)
dig <host> DNS Lookup of a host (verbose) (e.g.: dig google.com)
rsync -avz myfolder somehost:/var/www/ Sync a folder to a remote host and specific path
rsync -avz somehost:/var/www/ . Sync from remote host and specific path to local folder
rsync -avz <dirSource> <dirTarget>Sync entire Folder (locally)
rsync -avz <dirSource>/ <dirTarget> Sync only contents of folder (locally)
##### **Command-Line Operators**
**Command****Description**
<command> > file.txt Write output of a command into a file (creates/overwrites file)
<command> >> file.txt Write output of a command into a file (appends at end of file)
<command1> && <command2> Do command2 only if command1 succeeds
<command1> || <command2> Do command2 only if command1 fails
<command1> | <command2> Pipe command1 output into command2
! Negation Operator (e.g. find . ! -user "root")
More about operators: [linux-command-operators](https://www.makeuseof.com/linux-command-line-chaining-operators/)
##### **Other helpful Commands**
**Command****Description**
bash myCustomScript.sh Execute a bash script
history | tail Show last 10 lines of your history (commands)
htop Very helpful utility to show all process, cpu, ram, ..
ps aux | grep http Show processes who accesses http
which <command> Show path location of a command
tar -cvf myfolder.tar myfolder Create a compressed tar file of a folder
tar -xvf myfolder.tar Extract a compressed tar file
zip -r myfolder.zip myfolder Create a compressed zip file
unzip myfolder.zip Extract a compressed zip file
EDITOR=nano crontab -eSet Editor for current shell only (temporarily)
select-editorSet Editor for user (usually permanently)
vim file.txtEdit a file in the Vim Editor
nano file.txtEdit a file in the Nano Editor
sudo su - www-data -s /bin/bash
Switch User to example "www-data"