[lbo-talk] Meditations on UNIX

Chuck Grimes cgrimes at rawbw.com
Wed Dec 14 22:12:00 PST 2005


Oh, and, can anyone recommend a good/short UNIX primer. I don't need really geeky stuff, just file/directory manipulation, symolic links, changing access permissions... Joanna

----------

The easiest way to learn UNIX is to get the engineers to set up a remote shell account, so you can log into it. Then you can play. Seriously! That's the fastest and simplest way to learn both what you need to know and no more than that. The other thing you may need is a good terminal emulation program installed on your home system. I wouldn't trust anything that comes with NT or XP to work correctly (Dwayne or Ravi might know better). What you want is a terminal that works exactly like the shell and can be modified to fit the minor variations between shells (sh, csh, bash,...). The native version of `telnet' I've used on XP at work is completely inadequate for this purpose.

Once you get the terminal emulation program working, you can use the on-line manual. You can also type in any command below into google and get the manual page or description. You may have to preface with ``unix <command>'' for common letter combinations like `ls'.

To find something in the manual type `man -k <subject>'.

You'll get a screen full of shit and try to pick what sounds most like what you want, using the `man <command>', for the manual page. The manual pages will seem utter gibberish at first, but you will get used it quickly.

Below are most of the standard commands to play with. Solaris has some variations. These work on FreeBSD. To format correctly changed the email font to Courier or another fixed width font and print the e-mail. (For command line don't use commas as below. Conventional separator is one space.)

ls ................. show current directory contents, in alphabetical order ll ................. show directory contents, with details exit .............. log off the system mkdir (name)........ make a directory rmdir (name)........ remove directory rm (name)........... remove file (rm -R *, deletes directories with files) cd ................. change current directory (cd .. moves up one level) more (file) ........ view a file, pausing every screen full less (file) ........ view a file (-? or --help for commands in less) man (command) ...... manual pages on a command, program or process cp (file1, file2)... copy file1 into file2, with file1 unchanged mv (file1, file2)... move file1 to location of file2, removes file1 pwd ................ show current directory cat (file1, file2).. concatenate files to a file, screen or printer diff (file1, file2). compare two files and show differences ln (file1, file2)... hard link source file(1) to target file(2) (see man) ln -s (file1, file2) symbolic link named file(1) points to file(2)

lp (file)........... print (file) shutdown -r now .... shut down system, must be root or superuser su (password) ...... login as super user with password from user account startx ............. start the X-window system top ................ show all current processes as dynamic list ps -u (userid)...... show current processes owned by user ps -aux ............ show all current processes as static list kill -9 (pid) .......kill job by id number, user must own process or job jobs ............... show jobs stopped, not dead

vi (filename)....... difficult but necessary to learn text editor ee (filename)....... easy to use text editor with commands on top emacs (filename).... major text editor (see man) xemacs (filename)... same as emacs with different interface (see man) ispell (filename)... spell checker for (filename) lynx (URL).......... a text based internet browser (goes to url named) trn ................ read usenet newsgroups

mail (user at address). unix mail, send with (.) on empty line pine ............... easy to use cli mail reader inc ................ invoke the nmh mailer to install itself (see man) fetchmail .......... invoke fetching mail from pop account (see man)

telnet (host) ...... connect to remote host ftp (host) ......... connect to a ftp site rsh (host) ......... connect to remote host csh ................ start the C shell interpreter sh ................. start standard shell interpreter

passwd ............. change your password chfn ............... change your "Real Name" as seen on finger chpass ............ change your user login, pass, uid, shell, etc. who ................ show who is logged into the local system w .................. show who is logged on and what they're doing

grep (string)(file). get regular expression (string) from (file) whereis (key)....... find a (key word) in directories or files find () -name ().... find (dir_name) -name (file_name)

df ................. show disk space available on the system du ................. show how much disk space is being used up by folders chmod .............. change permissions on a file (must own file) ping (address)...... send icmp echo request to test connection ifconfig (options).. show details of network interfaces (see manual) netstat (options)... show network status (see manual)

make (make file).... execute makefile script gcc (file.c) ....... compile C++ source (see Info) ./ (file) .......... execute (file) exec (file) ........ execute (file)

gzip (file)..........compress file zip (file).......... compression for DOS type files tar -cfv (files).... compress multiple files or directory (file.tar) tar -xzvf (file) ... extract gzipped tar file (filename.tar.gz)



More information about the lbo-talk mailing list