|
UNIX User Basics Joshua Uziel - 1/17/99 (PDF version of this document with a vi editor overview as well, which was produced for a UCLA LUG tutorial I gave many moons ago.) Getting Helpman - Look at manual page, do this to see almost any command's options - example: "man ls" - DO THIS WITH MOST OF THESE COMMANDS!!! Listing and Moving Files and Directoriesls - LiSt files - "-a" lists all files, "-l" give a long DOS-dir-like output - example: "ls -la" cp - CoPy - copy file(s) from one location to another - example: "cp *.c another_directory/" mv - MoVe - move file(s) from one location to another, same as cp except it removes files afterwards rm - ReMove - delete files - example: "rm *.o" cd - Change Directory - example "cd /tmp" mkdir, rmdir - MaKe DIRectory and ReMove DIRectory ln - LiNk - make a link to a file - two types of links, normal and symbolic - example: "ln -s original newlink" Special Directories - '.' is current, '..' is current's parent, '~' is home, and '/' is the root (or top) of all directories Redirection and Shell Stuff| - Pipe, one of UNIX's best features, used to send output from one program to be input to another - example: "ls -l | grep uzi" >, >>, < - Redirect output of a program to a file, append output to end of a file, and get input from a file - example: "./a.out < input > ouput" *, ? - Wildcards - used to specify any number (including zero) of any character for '*', and any one character for '?' - example: "ls *.?" $var - An environment variable, where "var" is the name and a value can be seen using "echo $var" set, setenv - used to set environment varibles, depending on shells. Managing File PermissionsSample "ls -l /bin/ls" output: -rwxr-xr-x 1 root root 29980 Apr 23 1998
/bin/ls chmod - Change a file's mode or permissions - one way is to use octal numbering - example: "chmod 751 /bin/ls" for rwxr-x--x chgrp - Change a file's group - example: "chgrp users /bin/ls" chown - Change a file's owner - example: "chown uzi /bin/ls" umask - Set default file permissions (generally, do the opposite, or "777 minus what you want") Process Managementps - Get a listing of running "processes" or programs - example: "ps -aux" kill - Kill a running process - example: "kill -CODE PID", where CODE is an optional kill code, and PID is the process ID #. & - Run a program in the background - example "netscape &" CTRL-Z - Suspend a running program CTRL-C - Kill a running program fg, bg - Put a suspended program in the foreground or background jobs - List running programs of this terminal - each has a number that can be refered to as %#, or %1 for number one (useful with fg, bg and kill) nice - Make a program use less computer time nohup - Let a program run after you log out (NO Hang-UP) Viewing Text Filescat - Concatinate and display files, used to output a file's contents without pausing - example: "cat textfile" more - Like cat, but pauses every screen-full - example: "more prog.c" less - Like more, but more powerful head, tail - View the beginning or ending of a file, given a number option with display that many lines - example: "tail -25 /var/spool/mail/uzi" wc - Get statistics of how many lines, words and characters in a file - example: "wc file.txt" Searching and Comparingfind - Find a file, second argument is where to search from - example: "find . -name '*.c' -print" grep - Look for text in a file - example: "grep variable *.c" cmp - Compare two files - example: "cmp file1 file2" diff - Output difference between two files - example: "diff prog.c.orig prog.c > prog.c.diff" Printing - Depending on which Unix you're using (BSD type, SYSV type) is which you may be using lpr, lp - Print a file -examples: "lpr -P printer file" or "lp -d printer file" lpq, lpstat - Get statistics on a printer(s) lprm, cancel - Cancel a print job Finding and Communicating with other Usersfinger - Get information on another user on the system - example: "finger uzi" w, who - Find out who else is on a system write - Write a message to a user (user CTRL-D to stop) - example: "write uzi" talk - Talk to a user (CTRL-C to stop, and there's also "ytalk" which is an enhanced version) - example: "talk uzi" mesg - Use "mesg y" or "mesg n" to allow or disallow others to write and talk to you Remote Commandstelnet - Open a connection on another system - example: "telnet fire.csua.ucla.edu" ftp - Retrieve files with the File Transfer Protocol - example: "ftp ftp.kernel.org" rlogin - Similar to telnet, but if you have a ".rhosts" file with allowed machines, you can log in without a password rsh - Also using ".rhosts", lets you run one command on another machine without logging in rcp - Another that uses ".rhosts" and lets you copy files from another machine Miscellaneousalias - Aliases can be used to make a shortcut for a common command - example: "alias dir 'ls -l'" or "alias dir='ls -l'", depending on shell at - Lets you have a program run "at" a certain time crontab - Schedule regular programs to run at certain times (some let all users have their own crontab file) cal - Print a calendar for a given month - example: "cal 8 1976" or just "cal" for this month date - Print current time and date df - Find out how much free disk space is available - example: "df -k ." for current directory in kilobytes du - Find out disk usage of a file or directory - example: "du -ks ~" for size of your entire home directory echo - Repeats or echoes the argument - example: "echo hello" prints "hello" tar - Tape ARchive - allows you to pack many files together - example: "tar -xvf file.tar" to extract gzip, gunzip - Compress or uncompress *.gz files - example: "gzip file.tar" passwd - Change your password on a system spell - Spellcheck a text file against system dictionary - example: "spell paper.txt" sort - Sort contents of a file time - Get runtime of a program - example: "time ls -l" uname - Get info on a machine - example: "uname -a" uptime - Get how long a machine has been up which, whence, where - File out which program you'll be running, or where all occurences of a program is in your path - example: "which ls" vi, pico, emacs, jed, joe - Text editors pine, elm, mutt, mailx, mail - Email programs |