• How about a short Unix Primer?

    My pleasure. Unix is a very powerful and stable operating system. It has many tools that can be used to customize your environment to suit your working style -- and with some basic programming ability, you can also program many of these tools yourself. It has plenty of software (called Unix tools) that are free and contributed by other users and programmers like yourself. Unix was invented by Thompson and Ritchie from Bell Labs in the late 1960's. Its original multi-user operating system is something that Windows NT is trying to emulate in the 1990's. There is another reason to know Unix: there is a free version called LINUX that you can even download from the internet, and it comes with loads of free software! However, the simplest way to get LINUX on your home machine is buy a book on LINUX that also has a distribution of LINUX on a CDROM. Your basic interaction with the Unix operating system is through a program called the "(unix) shell". There are several variants of very powerful command languages ("sh", "bash", "csh", etc) that allows you to program this shell.

    Here are some basic shell commands (we suggest that you try out them out as you go).
    NOTATION: when specifying commands below, <xxx> indicates a string to be replaced by actual arguments. However, [xxx] indicates an optional argument xxx.

    BASIC SHELL COMMANDS:

    DIRECTORIES AND SPECIAL DIRECTORY NAMES

    Many of the above commands refer to file names and directories. How are these organized? All files in unix are stored in directories. A directory can contain other directories ("subdirectories"). All these files and directories are organized as a tree. The root of this tree is a directory called the root directory and written "/". Type this command to see what is in root directory:
    ls /
    The output of the command will include standard subdirectories named "usr", "bin", etc. If you want to see what is in "bin", you can next type
    ls /bin
    Every user in a unix system is given a home directory. For instance, on my unix account, my home directory is named "/home/yap". Unix gives you a short way to refer to your home directory: it is "~" (tilde character). In fact, you can refer to any other user's home directory by appending the user name to tilde. Thus, if someone has user name "jane", then jane's home directory can be referred to as ~~jane".
    When you log into your account, this will be your initial current directory. Of course, the current directory can be changed by using the cd command. Again, you can find out what your current directory name is by typing the command pwd. A short way to refer to your current directory is "." (dot character). Likewise, a short way to refer to the parent of current directory is ".." (dot dot characters). E.g., the grandparent of current directory is "../..". Try this out: if your current directory is the root "/", and you type the command ls .., what do you get?
    E.g., you can list the files in your grandparent directory by typing ls ../...
    E.g., If your parent directory has a subdirectory named "foo", you can make foo your current directory by typing cd ../foo

    SPECIAL KEYS

    Important and useful to know:

    What else should I know in unix?

    1. Text Editors: this is probably the most basic tool you need next. For instance, you need this to create your program files or prepare your research papers.
    2. Text Processing: Most Unix users prefer TeX or LaTeX for preparing their documents. Especially for mathematical typography, this is unequalled.
    3. Shell: Actually, you talk to unix through a special command called a "shell". The "shell" is actually a command interpreter and it has its own syntax which you program...