Unix, DOS, Windows, O/S2... all operating systems start you off at a "shell." A shell is a command interpreter. It takes your keyboard entries and hands them to the computer in a way it can understand and act upon. When you are positioned at a shell prompt (DOS=C:\, Unix=$ or # or %, Windows=GUI Desktop interface) you are sitting in a special environment. There are two very important aspects of this environment:
The environment uses variables to control your operation.
You can change these variables to customize your environment to taste.
Environment Variables
This section contains
Setting Environment Variables (DOS)
Setting Environment Variables (UNIX/LINUX/XENIX)
Exporting Variables
Unsetting Environment Variables
Listing Environment Variables
· DOS/WINDOWS
Setting Environment Variables
This is an easy matter under DOS. You use the "set" command. The syntax is:
SET VARIABLENAME=VALUE
Example:
SET MINE=C:\WORDPERFECT\WPDOCS\MYFILES
Once a variable is set in DOS, you use it by obtaining its contents with a % sign directly in front of it and directly after it. For example, if you set a variable in the above manner, you could use it like this:
cd %MINE%
This tells the "cd" command (change directory) to change you to the long directory name contained in the variable MINE. A good shortcut. It is the very same thing as typing:
cd C:\WORDPERFECT\WPDOCS\MYFILES
Unsetting Environment Variables
To unset a variable in DOS, use the syntax:
set variablename=
By setting it equal to nothing, it goes away.
Listing Environment Variables
To list the envrionment variables in your environment (and their values) use the "set" command by itself. When you type "set" you might see a lising like this:
BLASTER=A220 15 D1 H5 P330 T6 E620
JAVA_HOME=C:\cafe\JAVA
MINE=C:\WORDPERFECT\WPDOCS\MYFILES
PATH=C:\cafe\JAVA;C:\WINDOWS;C:\WINDOWS\COMMAND;C:\FP
PFDSK=C
TEMP=C:\TEMP
To see the contents of just one environment variable, use the "echo" command, as in:
echo %MINE%
You will see:
C:\WORDPERFECT\WPDOCS\MYFILES
· UNIX / LINUX / XENIX
Setting Environment Variables
Under Unix, setting variables is even easier than under DOS. You do not even need the "set" command. The syntax is just:
variablename=value
Example:
mine=/usr/tracy/wp/myfiles
Exporting Variables
Once a variable is set in Unix, it is only useful to your current shell. That is to say, if you call up another program like filePro or WordPerfect, these variables are completely lost... they are simply not seen in that called environment. This is why you must always "export" any variable that you set under Unix. The syntax is very simple:
export variablename
So, you can consider that setting any environment variable under Unix is a two-step process. First set it, then export it. You only have to export a variable one time. After that you can change its value as many times as you like, it will remain exported and always send out the right value to programs that you call. The whole syntax is as follows:
variablename=value
export variablename
Example:
mine=/usr/tracy/wp/myfiles
export mine
To obtain a variable's contents just place a $ directly in front of it. For example, if you set a variable in the above manner, you could use it like this:
cd $mine
This tells the "cd" command (change directory is the same command in both Unix and DOS) to change you to the long directory name contained in the variable mine. Again, it is the very same thing as typing
cd /usr/tracy/wp/myfiles
Unsetting Environment Variables
To unset an environment variable in Unix, use the "unset" command, as in:
unset variablename
This will make it go away.
You can also set the variable equal to nothing as in:
; e'#=""
But this will not clear it from the environment, just set it equal to nothing.
Listing Environment Variables
To list the envrionment variables in your environment (and their values) use the "set" command by itself. When you type "set" you might see a lising like this:
PATH=/bin:usr/bin:/usr/$HOME/bin:/u/appl/fp
PFTMP=/usr/tmp
PS1=$
TZ=EST5EDT
If you want to see which of these variables is exported, use the export command by itself, as in:
; %äYou might see something like:
export ABE=ASCII
export PATH
export PFTMP
export PS1
export TZ