====== Unix command line cheat sheet ====== File Commands ls - directory listing ls -a - directory listing with hidden files ls -al - formatted directory listing with hidden files cd dir - change directory to dir cd - change to home cd - - change back to previous directory pwd - show current directory mkdir dir - create a directory dir rm file - delete file rmdir dir - delete empty directory dir rm -r dir - recursively delete directory dir (use with caution) rm -f file - force remove file; no error output if file doesn't exist rm -rf dir - recursively force remove directory dir (use with caution) cp file1 file2 - copy file1 to file2 cp file1 file2 file3 dir - copy file1, file2 and file3 to dir cp -r dir1 dir2 - recursively copy dir1 to dir2; create dir2 if it doesn't exist mv file1 file2 - move file1 to file2 if file2 is an existing directory, moves file1 into directory file2 ln -s file link - create symbolic link link to file >file - create file (use with caution, doing this on an existing file will overwrite the content) touch file - create or update file cat > file - places standard input into file cat file1 > file2 - overwrites the content of file2 with the content of file1 cat file1 >> file2 - appends the content of file1 to file2 echo "Hello World" > file - overwrites file's content with Hellow World echo "Hello World" >> file - appends Hello World to the end of file less file - output the contents of file more file - output the contents of file head file - output the first 10 lines of file tail file - output the last 10 lines of file tail -f file - output the contents of file as it grows, starting with the last 10 lines sed 's/foo/bar/g' file - replaces all occurrences of foo with bar in file sed -i.backup 's/food/bar/g' file - replaces all occurrences of foo with bar in file after backing up file as file.backup rm {m,M}yfile - remove files according to a pattern Example: $ ls $ touch myfile Myfile myfile1 Myfile1 $ ls myfile Myfile myfile1 Myfile1 $ rm {m,M}yfile $ ls myfile1 Myfile1 Process Management ps - display your currently active processes top - display all running processes kill pid - kill process id pid killall proc - kill all processes named proc * file bg - lists stopped or background jobs; resume a stopped job in the background fg - brings the most recent job to foreground fg n - brings job n to the foreground File Permissions chmod octal file - change the permissions of file to octal, which can be found separately for user, group, and world by adding: * 4 – read (r) * 2 – write (w) * 1 – execute (x) Examples: chmod 777 - rwx for all chmod 755 - rwx for owner, rx for group and world. For more options, see man chmod SSH ssh user@host - connect to host as user ssh -p port user@host - connect to host on port port as user ssh-copy-id user@host - add your key to host for user to enable a keyed or password-less login Searching grep pattern files - search for pattern in files grep -r pattern dir - search recursively for pattern in dir command | grep pattern - search for pattern in the output of command updatedb - updates the slocate database; see next item locate file - find all instances of file; may need to run updatedb first find $HOME -user root - find files owned by root in $HOME find /path -depth -type d -empty - find empty directories find /path -depth -type f -empty - find empty files find /path -name [name_of_file] - find a file with a specific name find /path -name "*.[given_extension]" - find a file with a specific extension find /path -name '*.txt' -perm 644 - find .txt files with specific permissions find /path -perm -[permission_bits] - find files with some given permissions find /path -name '[given_name].*' - find files with a given name and any extension System Info date - show the current date and time cal - show this month's calendar uptime - show current uptime w - display who is online whoami - who you are logged in as finger user - display information about user uname -a - show kernel information cat /proc/cpuinfo - cpu information cat /proc/meminfo - memory information man command - show the manual for command df - show disk usage du - show directory space usage free - show memory and swap usage whereis app - show possible locations of app which app - show which app will be run by default lshw -html > hardware.html - create an overview of hardware lsb_release -a - show information about the distro tr : '\n' <<<$PATH - show directories in the PATH, one per line sed 's/:/\n/g' <<<$PATH - show directories in the PATH, one per line with sed Compression tar cf file.tar files - create a tar named file.tar containing files tar xf file.tar - extract the files from file.tar tar cf file.tar.gz files - create a tar with Gzip compression tar xf file.tar.gz - extract a tar using Gzip tar cf file.tar.bz2 - create a tar with Bzip2 compression tar xf file.tar.bz2 - extract a tar using Bzip2 gzip file - compresses file and renames it to file.gz gzip -d file.gz - decompresses file.gz back to file Network ping host - ping host and output results whois domain - get whois information for domain dig domain - get DNS information for domain dig -x host - reverse lookup host wget file - download file wget -c file - continue a stopped download Installation Install from source: ./configure - execute the configure script make - compile the source make install - install needed files dpkg -i pkg.deb - install a deb package on .deb-based systems rpm -Uvh pkg.rpm - install an rpm package on .rpm-based systems Shortcuts Ctrl+A - move to the start of the line Ctrl+E - move to the end of the line. Ctrl+U - delete from the cursor to the beginning of the line. Ctrl+K - delete from the cursor to the end of the line. Ctrl+W - delete from the cursor to the start of the word. Ctrl+Y - pastes text from the clipboard. Ctrl+L - clear the screen leaving the current line at the top of the screen. Ctrl+C - halts the current command Ctrl+Z - stops the current command, resume with fg in the foreground or bg in the background Ctrl+D - log out of current session, similar to exit Ctrl+R - reverse search ^abc^xyz - replace first occurrence of abc with xyz in last command and execute it !! - repeats the last command sudo !! - repeats the last command with sudo privileges exit - log out of current session Source: http://ardchoille42.blogspot.com/2009/08/command-line-cheatsheet.html {{tag>linux}} ~~LINKBACK~~ ~~DISCUSSION~~