11-05-2009
Usually, rebooting is the last measure you should take. Modern shells normally create a lookup table for commands, so that the path doesn't have to be searched every time. If you install a program in a different path, but with the same name, the old lookup entry (hash) still points to the old program.
Depending on your shell, you can make it forget it's lookup entries using 'rehash' or 'hash -r'. And even if that doesn't work, closing the shell and/or opening a new one (logging out and logging in) should have the same effect.
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
root->echo $PATH
/usr/ccs/bin:/opt/sfw/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
root->find / -name gcc
/usr/local/bin/gcc
/usr/local/doc/gcc
root->which gcc
no gcc in /usr/sbin /usr/bin
Why cant it find gcc - the path looks okay doesnt it?
I am running solaris 9 - and... (7 Replies)
Discussion started by: frustrated1
7 Replies
2. UNIX for Dummies Questions & Answers
Hello everyone,
I'm a unix noob. I have a powerbook running mac os x 10.4 and for one of my classes I need to install the latest version of php (5.0.5). I'm following the instructions at http://developer.apple.com/internet/opensource/php.html to install but I've run into a problem.
The... (2 Replies)
Discussion started by: kendokendokendo
2 Replies
3. Shell Programming and Scripting
hi ,
i have written csh script i am unable to set PATH variable in my script.
my script is like this
=====================================
# ! /bin/csh -f
setenv PATH "$PATH:/opt/terascan/bin"
ls -l > list
lspass > pas
peekauto > schedule \
num_days = 1 \
exit 0... (1 Reply)
Discussion started by: rajan_ka1
1 Replies
4. UNIX for Advanced & Expert Users
Hi
i am writing a script containing processing commands which are reside in /opt/terascan/bin dir. if i run the script from command prompt it is working fine. but in crontab it is not working.
if i give env command from command prompt it is showing /opt/terascan/bin dir in PATH variable.
... (10 Replies)
Discussion started by: rajan_ka1
10 Replies
5. Shell Programming and Scripting
How to pass a file path to open a file?
I am using cygwin.
I want to open a file from a particular path, say C:\Test\File1,. This file path is stored in a variable.
I am able to cat a file like this :
cat "c:\Test\File1"
but i want the same thing to happen in my script file through a variable... (3 Replies)
Discussion started by: sandeep_hi
3 Replies
6. Solaris
I am trying to install the pkg-get package to a fresh install of Solaris 10. I am able to download and install correctly using the default directory for both pkg-get and wget as found on blastwave.org. When I issue the command "which wget and which pkg-get" it returns no wget or pkg-get found in... (1 Reply)
Discussion started by: greengrass
1 Replies
7. Shell Programming and Scripting
Hi I am using MKS Toolkit c shell.
I want to basically check if my PATH variable already contains a certain path directory so I tried this (it didnt work!): if: Expression Syntax
if ( echo $path |grep -c c:/PROGRA~1/blah/blah ) then
please help me get this little statement to work.
... (3 Replies)
Discussion started by: vas28r13
3 Replies
8. Shell Programming and Scripting
Hi all,
I have a variable test has the following value assigned.. could you please help on doing cd or ls to the value in the varible ...
$echo $test
/bdm/sdd/compounds/AD4833XT/requests/clin/Watson_20090420/docs/MHRA\ Comments\ \&\ Responses
$cd $test
ksh: cd: bad argument count
$cd... (3 Replies)
Discussion started by: firestar
3 Replies
9. Shell Programming and Scripting
Recently I lost a number of changes I made to a program when the SCO Unix system went down. The system "mail" suggested a "vi -r" option that took me back several days. To prevent this in the future, I am trying to create my own vi command:
if
then
cp -p $1 $1.bak
fi
/usr/bin/vi $*
if ... (5 Replies)
Discussion started by: wbport
5 Replies
10. UNIX for Beginners Questions & Answers
For the sake of not going insane and not buggering a load of needed system stuff, I have created a dir /mybin. (This is a Debian system.)
I have then edited the /etc/profile and /etc/login.defs files and added :/mybin to all of the path variables. I have the file /mybin/mtp for... (2 Replies)
Discussion started by: MuntyScrunt
2 Replies
hash(1) User Commands hash(1)
NAME
hash, rehash, unhash, hashstat - evaluate the internal hash table of the contents of directories
SYNOPSIS
/usr/bin/hash [utility]
/usr/bin/hash [-r]
sh
hash [-r] [name...]
csh
rehash
unhash
hashstat
ksh
hash [name...]
hash [-r]
DESCRIPTION
/usr/bin/hash
The /usr/bin/hash utility affects the way the current shell environment remembers the locations of utilities found. Depending on the argu-
ments specified, it adds utility locations to its list of remembered locations or it purges the contents of the list. When no arguments are
specified, it reports on the contents of the list. The -r option causes the shell to forget all remembered locations.
Utilities provided as built-ins to the shell are not reported by hash.
sh
For each name, the location in the search path of the command specified by name is determined and remembered by the shell. The -r option to
the hash built-in causes the shell to forget all remembered locations. If no arguments are given, hash provides information about remem-
bered commands. The Hits column of output is the number of times a command has been invoked by the shell process. The Cost column of output
is a measure of the work required to locate a command in the search path. If a command is found in a "relative" directory in the search
path, after changing to that directory, the stored location of that command is recalculated. Commands for which this will be done are indi-
cated by an asterisk (*) adjacent to the Hits information. Cost will be incremented when the recalculation is done.
csh
rehash recomputes the internal hash table of the contents of directories listed in the path environmental variable to account for new com-
mands added.
unhash disables the internal hash table.
hashstat prints a statistics line indicating how effective the internal hash table has been at locating commands (and avoiding execs). An
exec is attempted for each component of the path where the hash function indicates a possible hit and in each component that does not begin
with a '/'.
ksh
For each name, the location in the search path of the command specified by name is determined and remembered by the shell. The -r option to
the hash built-in causes the shell to forget all remembered locations. If no arguments are given, hash provides information about remem-
bered commands.
OPERANDS
The following operand is supported by hash:
utility The name of a utility to be searched for and added to the list of remembered locations.
OUTPUT
The standard output of hash is used when no arguments are specified. Its format is unspecified, but includes the pathname of each utility
in the list of remembered locations for the current shell environment. This list consists of those utilities named in previous hash invoca-
tions that have been invoked, and may contain those invoked and found through the normal command search process.
ENVIRONMENT VARIABLES
See environ(5) for descriptions of the following environment variables that affect the execution of hash: LANG, LC_ALL, LC_CTYPE, LC_MES-
SAGES, and NLSPATH.
PATH Determine the location of utility.
EXIT STATUS
The following exit values are returned by hash:
0 Successful completion.
>0 An error occurred.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Availability |SUNWcsu |
+-----------------------------+-----------------------------+
|Interface Stability |Standard |
+-----------------------------+-----------------------------+
SEE ALSO
csh(1), ksh(1), sh(1), attributes(5), environ(5), standards(5)
SunOS 5.10 17 Jul 2002 hash(1)