Usually the dirs in Unix System Resources (that's what /usr stands for tough dubbed simply "user" by most admins)
that contain executables should be in your PATH, so that a which tr should find it.
As far as I remember SunOS (inherited by Solaris still) traditionally has an unusual place
where lots of executables reside, viz. /usr/xpg4/bin.
This dir that often is not in the PATH or comes after /usr/bin has implementations of well known Unix commands
that behave differently (according to some agreed upon common standard by the X/Open consortium, X/Open - Wikipedia, the free encyclopedia)
Maybe that you will find tr there.
I think HP have solved this more cleverly by making lots of Unix commands aware of the environment variable UNIX95.
If this is defined when invoking an XPG4 command it will behave differently
(the best example being ps)
As for your shell script test, I would't use the test -s which tests for the file's size (if it has any contents)
For executables better test for executability (x-bit set) by
You may also run a find over /usr to search for executables
e.g.
If you have GNU find you can omit the pipe to xargs but simply append -ls
Last edited by buffoonix; 09-02-2008 at 03:46 AM..
if [ `type tr>/dev/null;echo $?` -ne 'o ]
then
echo "ERROR: tr command not found in current installation. Please install it."
fi
For what it's worth, this is a Useless Use of Backticks and Useless Use of Test $? (and also, as far as I can tell, a syntax error; or what's with the 'o?)
The which command might or might not work as well as type but if you have a (POSIX?) Bourne shell, the type command is the builtin for finding an executable. Both of them will be somewhat constrained by your PATH so if you might have executables in funny places, either augment your PATH, or look into the stuff suggested by buffoonix
Hello Forum,
I'm making very good progress on my report thanks to the very helpful people on this forum. I've been able to successfully create my report for my Red Hat servers. But I do have a few ubuntu servers in the mix and I'd like to capture some data from them when an ssh connection is... (8 Replies)
exec(): 0509-036 Cannot load program /usr/opt/freeware/bin/rpm because of the following errors:
0509-022 Cannot load module /opt/freeware/lib/libintl.a(libintl.so.1).
0509-150 Dependent module /opt/freeware/lib/libiconv.a(shr4.o) could not be loaded.
0509-152 Member... (4 Replies)
below is the output xml string from some other command and i will be parsing it using awk
cat /tmp/alerts.xml
<Alert id="10102" name="APP-DS-ds_ha-140018-componentFailure-S" alertDefinitionId="13982" resourceId="11427" ctime="1359453507621" fixed="false" reason="If Event/Log Level(ANY) and... (2 Replies)
I am working with a sh script on a solaris 9 zone (sol 10 host) that grabs information to build the configuration command line. the variables Build64, SSLopt, CONFIGopt, and CC are populated in the script. the script includes
CC=`which gcc`
CONFIGopt=' --prefix=/ --exec-prefix=/usr... (8 Replies)
HI Guys,
I hope you are well. I am trying to write a script that gets executed every time i open a shell (cshell). I have two questions about that
1) I need to enter these commands
$ echo $DISPLAY
$ setenv $DISPLAY output_of_echo_$display_command
How can i write a... (2 Replies)
Hi,
Well my title isn't very clear I think. So to understand my goal:
I have a script "test1"
#!/bin/bash
xvkbd -text blabla
with xbindkeys, I bind F5 key in order it runs my test1 script
So when I press F5, test1 runs.
I'm under Emacs/Vi and I press F5 in order to have "blabla" be... (0 Replies)
Hi everyone,
when executing this command in unix:
echo "WM7 Fatal Alerts:", $(cat query1.txt) > a.csvIt works fine, but running this command in a shell script gives an error saying that there's a syntax error.
here is content of my script:
tdbsrvr$ vi hc.sh
"hc.sh" 22 lines, 509... (4 Replies)
AIX:Command to get netaddress/subnet address command in IPv4/IP6
Can anybody help us with a command to retrieve netaddress/subnet address command in IPv4/IP6 on aix machine.
net/subnet address is in the format 172.16.212.0(signifies all 255 machines in an IPv4 network) (2 Replies)
Hi ,
I have a piece of code ...wherein I need to assign the following ...
1) A command line argument to a variable
e.g origCount=ARGV
2) A unix command to a variable
e.g result=`wc -l testFile.txt`
in my awk shell script
When I do this :
print "origCount" origCount --> I get the... (0 Replies)
Sir,
I using the following commands in a file (part of a bigger script):
#!/bin/bash
cd /opt/oracle/bin
ls -lt | tail -1 | awk '{print $6}' >> /tmp/ramb.out
If I run this from the command prompt the result is:
2007-05-16
if I run it as a cron job then... (5 Replies)