Starting Applications

I installed an application I downloaded from the Internet, and everything seemed to go fine, but I still get "command not found" when I type its name. I think I have the right name, so why will it not it start?

If you are trying to start an application from the shell prompt and it is not working, try adding ./ before the name of the application's executable.

For example, imagine that you have downloaded the setiathome client application and want to try it out. You follow the directions for installing the software. Now, you change to the directory in which you know the executable can be found (as shown below).

cd setiathome

To start the application now, precede the executable with a ./ as shown below:

./setiathome

The reason you need to use the ./ in order to start the application is because the executable wasn't placed in a directory where your user shell environment knew it could be found (such as /usr/bin).

In such instances, you have to change into the directory which holds the executable and start the application from there. That means you will have to tell your shell where it can find the executable; adding ./ tells your user shell that the executable can be found in the current working directory.

You can customize your settings so that you won't be required to use the ./ each time. To do this, you will have to edit your PATH variables.

Editing Your PATH

If you frequently start programs that are not located in a directory that your user shell has configured by default, you will have to edit your user shell configuration file to add the directory containing the executable you wish to run. You can do this by adding the directory to your PATH environment variable.

CautionCaution
 

These instructions are intended only for user accounts. Avoid modifying files such as the root user's .bash_profile, because of the potential security risks.

Start a text editor, such as pico, at a shell prompt. You can open the file called .bash_profile by typing the following:

pico .bash_profile

You will see a PATH statement, similar to the one shown below.

PATH=$PATH:$HOME/bin:

To the end of this statement, add ./ as shown below:

PATH=$PATH:$HOME/bin:/usr/lib/:/home/user/directory/

Replace user with your user name and directory with the directory containing the executable you wish to run.

Now, type [Ctrl]-[x]; you will be asked whether you want to save "the modified buffer" (that's what Pico calls an updated file); type [y] for "yes." Next, you will see the name the file will be saved as; press the [Enter] key.

You can then make the changes to .bash_profile take effect immediately by typing the following command:

source .bash_profile

By doing the above, you do not have to manually add ./ to the beginning of the executable to start an application located in the directory you've added to your PATH.