This is an old revision of the document!
| Command | Function | 
|---|---|
| cd {/folder/} | cd (change directory), changes the current directory to folder | 
| pwd | shows current directory | 
| ls | shows all files and folders in the current directory in one line → confusing) | 
| ll | = ls –al → shows all files and folders + owner + size, 1 item each line | 
| alias | shows alias like „..“ for „cd ..“ | 
| cat {textfile} | displays the full file | 
| tail [-f -n 20] {file} | displays the last 20 lines of the file – extension „–f“ refreshes the file, extension „–n 20“ displays the last 20 lines | 
| head {file} | same as tail but it displays the first lines | 
| touch {file} | create a file / refresh the timestamp | 
| chmod [777 or +rwx] {file} | change rights of a file | 
| chown {user}:{group} {file or directory} [–R] | change owner and group, -R changes the complete directory including files and subdirectorys | 
| useradd [–m] | add a user (-m creates a homedir) | 
| groupadd | add a group | 
| cp {source} {target} [-r -a] | copy data, -r copy directory, -a keep the rights | 
| mv {source} {target} | move file or directory | 
| rm [–r] {file or folder} | removes a folder with all data in it / rmdir only removes empty folders | 
| cut [–d] “:” [-f] 1,3 | : is the delimiter and 1 and 3 are the columns | 
| echo “ ” > test.sh | deletes the entries of a textfile | 
| which sutp | shows path of sutp | 
| echo $? | 0 = success of the last command | 
| env | run a program in a modified environment | 
| uptime | shows how long your machine is running | 
| mkdir [–p] {/abc/abc} | create a directory including a subdirectory | 
| rpm [–ivh] | install a rpm file (install verbose hash) | 
| mount /dev/{cdrom, sr, hdc or tabtab} | mount something | 
| df -h | diskfree lists your diskspace | 
| dpkg -l | less | shows all apps installed with apt-get | 
| source {file} | evaluates a file | 
| ps [-aux] | grep '[p]erl' | look up the perl process but dont show the grep “perl” process | 
| ln -s {source} {target} | symlink | 
| cat /etc/*-release | shows the linux distribution (SLES/Ubuntu etc) | 
| find <PATH> -name “<FILENAME>” | finds a file in path | 
| history | grep xyz | finds xyz in the last executed commands | 
| zless /var/log/xyz.1.gz | open packed logfiles | 
| zless, zmore, zcat, zgrep | open gzipped files without extraction | 
| locate myscript | lists all paths to files named myscript | 
| ip addr list dev eth0 | lists all ips, including virtual ips | 
| echo $0 | shows the current running process (in script)/ shows the running shell (in shell) (csh,bash,etc..) | 
| echo $SHELL | shows the default shell (csh,bash,etc..) | 
| rsync -avzh [email protected]:/home/ /tmp/. | copy /home to /tmp via rsync | 
| wget -r ftp://<USER>:<PASS>@lunetikk.de | copy / to current folder via wget | 
| echo -e '\e[0;41m' | set backgroundcolor red for your current shell | 
| time /any/script.sh | displays the execution time | 
| mtr lunetikk.de | dynamic ping/traceroute | 
| nl test.sh | shows script with numbered lines | 
| curl ifconfig.me | display your external ip address | 
| curl ipinfo.io | display a “whois” for your ip address | 
| tree | display files and folders as a tree | 
| pstree | display running processes with children as a tree | 
| <space> rm secretfile | this command will not be recorded in history | 
| stat file.txt | displays info of the file | 
| while sleep 1;do tput sc;tput cup 0 $(($(tput cols)-29));date;tput rc;done & | display the time on the top right corner in shell | 
| echo "test" | mailx -s "Test mail" -S "smtp=<RELAY>" -r "<TO>" "<FROM>" | Send mails via different SMTP without changing your postfix config | 
| tar cfvz <archive>.tgz <dir/file> | compress files to tgz | 
| tar -xzfv <archive> | decompress tgz to current dir | 
| tar -xvjf <archive>.tar.bz2 <archive> | decompress bz2 to current dir | 
| tar -tvf <archive>.tar | list files in tar | 
| tar -xvf <archive>.tar home/foo/bar | extract /home/foo/bar from the tar (NO LEADING SLASH /) | 
| last -w | displays the full name instead of only 8 chars | 
| lsscsi -v | lists the scsi device id and its partition | 
| ypcat passwd | list all users from the nis masterserver | 
| ypwhich | list your nis masterserver | 
| find /tmp -type f -atime +30 -delete | delete files in /tmp with no access in the last 30 days | 
| dpkg –print-architecture | show cpu architecture (amd64/i386/…) (debian/ubuntu only) | 
| nmap -sL <IP like 192.168.178.*> | List all hosts in the given IP-range | 
| yes | yum install <package> | submit yes - also works for other commands | 
| Command | Function | 
|---|---|
| vim -x <file> | open file and set password | 
| vim <file> | open file and enter password after it was set | 
| Command | Function | 
|---|---|
| ftp -i lunetikk.de | start client without corfirmation needed | 
| get file.txt | download file.txt | 
| mget * | download all files | 
| put file.txt | upload file.txt | 
| mput * | upload all files | 
| ls -al | show files in current folder | 
| cd <PATH> | change directory | 
| lcd <PATH> | change local directory | 
If you want to create a backup or copy your website, you might want to archive your files before transfer. Check the following script which does this Github - abdulawal39/ZipCF
Copy the .zip to your targetserver and execute a php file (eg. yoursite.de/thephp.php) with the following code
<?php system('unzip <yourzipfile>.zip'); ?>
| Problem | Solution | 
|---|---|
| put /tmp/files.tgz local: /tmp/files.tgz remote: /tmp/files.tgz 200 PORT command successful 550 /tmp/files.tgz: No such file or directory | lcd /tmp/ cd /path/on/ftp put files.tgz | 
| Command | Function | 
|---|---|
| apt-cache search [Package] | search for [Package] (example nano) | 
| apt-get install [Package] | installs [Package] | 
| apt-get update | update sources.list/repository | 
| apt-get upgrade | update all installed packages | 
| apt-get remove [Package] | remove [Package] | 
| apt-get autoclean | remove software without sources | 
| apt-get autoremove | remove unused dependencys | 
| apt-get purge [Package] | remove [Package] and its configs | 
| apt-key list | grep expired | list all expired keys | 
| apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv <KEY> | update a key (key = 1024D/1234A5B6) | 
| apt-key adv --keyserver-options http-proxy=http://PROXYIP:8080 --keyserver hkp://keyserver.ubuntu.com:80 --recv <KEY> | update a key with proxy | 
| apt-key adv --keyserver keyserver.ubuntu.com --recv-keys <PUBKEY> | add a key (key = NO_PUBKEY A12B3CD456789E0F | 
| apt-mark hold [Package] | hold back [Package] | 
| apt-mark unhold [Package] | remove hold back from [Package] | 
| apt-mark showhold | show held back packages | 
| dkpg –install [Package.deb] | installs offline packages | 
| aptitude install [Package] | installs [Package] alt. apt-get | 
| service [Service] start/stop | start/stop a service (rc for Suse) | 
| dpkg -l | less | shows all apps installed with apt-get | 
| dpkg -l | grep <package> | shows all apps installed with apt-get by packagename | 
man dpkg-query
The first three columns of the output show the desired action, the package status, and errors, in that order.
Desired action:
            u = Unknown
            i = Install
            h = Hold
            r = Remove
            p = Purge
Package status:
            n = Not-installed
            c = Config-files
            H = Half-installed
            U = Unpacked
            F = Half-configured
            W = Triggers-awaiting
            t = Triggers-pending
            i = Installed
Error flags:
           <empty> = (none)
            R = Reinst-required
Reset all:
echo -e "\e[0mNormal Text"
Escape characters:
\e \033 \x1B
Example:
echo -e "\e[31mHello World\e[0m" echo -e "\033[31mHello\e[0m World"
 
| Colorcode | Code | Description | 
|---|---|---|
| 39 | echo -e “Normal Text \e[39mNormal Text” | default color | 
| 30 | echo -e “Normal Text \e[30mBlack” | black | 
| 31 | echo -e “Normal Text \e[31mRed” | red | 
| 32 | echo -e “Normal Text \e[32mGreen” | green | 
| 33 | echo -e “Normal Text \e[33mYellow” | yellow | 
| 34 | echo -e “Normal Text \e[34mBlue” | blue | 
| 35 | echo -e “Normal Text \e[35mMagenta” | magenta | 
| 36 | echo -e “Normal Text \e[36mCyan” | cyan | 
| 37 | echo -e “Normal Text \e[37mLight gray” | light gray | 
| 90 | echo -e “Normal Text \e[90mDark gray” | dark gray | 
| 91 | echo -e “Normal Text \e[91mLight red” | light red | 
| 92 | echo -e “Normal Text \e[92mLight green” | light green | 
| 93 | echo -e “Normal Text \e[93mLight yellow” | light yellow | 
| 94 | echo -e “Normal Text \e[94mLight blue” | light blue | 
| 95 | echo -e “Normal Text \e[95mLight magenta” | light magenta | 
| 96 | echo -e “Normal Text \e[96mLight cyan” | light cyan | 
| 97 | echo -e “Normal Text \e[97mWhite” | white/ mostly default… | 
| Colorcode | Code | Description | 
|---|---|---|
| 49 | echo -e “Normal Text \e[49mNormal Text” | default color | 
| 40 | echo -e “Normal Text \e[40mBlack” | black/ mostly default… | 
| 41 | echo -e “Normal Text \e[41mRed” | red | 
| 42 | echo -e “Normal Text \e[42mGreen” | green | 
| 43 | echo -e “Normal Text \e[43mYellow” | yellow | 
| 44 | echo -e “Normal Text \e[44mBlue” | blue | 
| 45 | echo -e “Normal Text \e[45mMagenta” | magenta | 
| 46 | echo -e “Normal Text \e[46mCyan” | cyan | 
| 47 | echo -e “Normal Text \e[47mLight gray” | light gray | 
| 100 | echo -e “Normal Text \e[100mDark gray” | dark gray | 
| 101 | echo -e “Normal Text \e[101mLight red” | light red | 
| 102 | echo -e “Normal Text \e[102mLight green” | light green | 
| 103 | echo -e “Normal Text \e[103mLight yellow” | light yellow | 
| 104 | echo -e “Normal Text \e[104mLight blue” | light blue | 
| 105 | echo -e “Normal Text \e[105mLight magenta” | light magenta | 
| 106 | echo -e “Normal Text \e[106mLight cyan” | light cyan | 
| 107 | echo -e “Normal Text \e[107mWhite” | white | 
| echo -e “Normal Text \e[1mBold” | bold | 
| echo -e “Normal Text \e[2mDim” | dim/ darker text | 
| echo -e “Normal Text \e[4mUnderlined” | underlined | 
| echo -e “Normal Text \e[5mBlink” | blink text/ doesnt work with most terminals | 
| echo -e “Normal Text \e[7minverted” | invert foreground and background colors | 
| echo -e “Normal Text \e[8mHidden” | hide text | 
| Command | Function | 
|---|---|
| apt-get moo | Try it out ;) | 
| aptitude moo | Try it out and add aptitude -v[vvvvv] moo ;) | 
Discussion