Sponsored Content
Top Forums Shell Programming and Scripting Using env variables to run a program Post 302887842 by Pherdinand on Tuesday 11th of February 2014 09:37:10 AM
Old 02-11-2014
Using env variables to run a program

Hi there,

I need urgent help with a small program that is run via shell script. Unfortunately I only understand the bare basics of shell scripting and can't figure out how to do this.

We have a program that tests the connection between 3 servers. I have a script that lets the program run on one specific server.
We have nearly the same directory structure on all servers and I need the script to be able to run this program from all servers without using individual scripts for each one.
That is we deploy the program and then simply copy the script from one server to the other 2.

Here is the script so far.
Code:
#!/bin/ssh

# resolve links - $0 may be a softlink
PRG="$0"

while [ -h "$PRG" ]; do
	ls=`ls -ld "$PRG"`
	link=`expr "$ls" : '.*-> \(.*\)$'`
	if expr "$link" : '/.*' > /dev/null; then
		PRG="$link"
	else
		PRG=`dirname "$PRG"`/"$link"
	fi
	echo "PRG = $PRG"
done

# Get standard environment variables
PRGDIR=`dirname "$PRG"`

# Only set $CT_HOME if not already set
# [ -z "CT_HOME" ] && CT_HOME=`cd "$PRGDIR/.." ; pwd`
CT_HOME=`cd "$PRGDIR/.." ; pwd`

# Make sure prerequisite environment variables are set
if [ -z "$JAVA_HOME" ]; then
	# For our servers we assume our standard jdk location
	if [ -d "/spd/iu/system/java/jdk1.6.0_65" }; then
		JAVA_HOME="/spd/iu/system/java/jdk1.6.0_65"
		echo "Seetting JAVA_HOME to $JAVA_HOME"
	else
		echo "Please set JAVA_HOME variable to a JDK >= 1.6.x"
		exit 1
	fi
fi

_RUNJAVA="$JAVA_HOME"/bin/java

# Set classpath
CLASSPATH="$CT_HOME"
CT_LIBDIR="$CT_HOME/lib"
if [ -d "${CT_LIBDIR}" ]; then
	for i in "${CT_LIBDIR}"/*.jar; do
		CLASSPATH="$CLASSPATH":"$i"
	done
else
	echo "Does not exist: ${CT_LIBDIR}"
fi

echo "CLASSPATH = ${CLASSPAT}"

#/spd/iu/system/util/te-con/te-con-1.2.0:/spd/iu/system/util/te-con/te-con-1.2.0/lib/te-con-1.2.0.jar:/spd/iu/system/util/te-con/te-con-1.2.0/lib/arcjob-3.4.1.jar

$_RUNJAVA -d64 -Djava.library.path="/spd/iu/system/wls/wls1035/wlserver_10.3/server/native/solaris/x64/:/spd/iu/web/kon/lib/" -cp "/spd/iu/system/util/te-con/te-con-1.2.0/lib/te-con-1.2.0_new.jar:/spd/iu/web/kon/lib/*" com.luz.telco.sandbox.tecon.ConnectionTest builtin/luz-kon-new.properties

Now I only get a fraction of what it does and the comments don't help me that much either.

Can anyone point me in the right direction?

Help would be much appreciated!

---------- Post updated at 03:37 PM ---------- Previous update was at 12:58 PM ----------

So far the only things referring to something unique on that server I found are:

In the last line:

Quote:
/spd/iu/web/kon/lib/
These directories have different names on each server.

And the arcjob-3-4-1.jar doesn't exist on all servers (I'll have to find an equivalent expression for each server).
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

export env variables

hi i want to write a shell script to set environment variables . But i am not been able to set that for the current shell instead i have to spawn a new shell. Is there a way to set the env variable for the current shell using shell script in bash shell ? Thnx (2 Replies)
Discussion started by: varun.81
2 Replies

2. UNIX for Advanced & Expert Users

Ksh - Env. Variables ??

Hey all, I have been using Ksh and in that I am setting Environment variables. To set Env. Variables I have created my own file "BuildScript.sh" in which i have written : export CLASSPATH=/somedir/some other dir/file:. export PATH=/some dir/file:. But when i am calling this... (4 Replies)
Discussion started by: varungupta
4 Replies

3. UNIX for Dummies Questions & Answers

Env variables not getting updated from the bashprofile

Hi, I am using the HP-UX machine of version B.11.23. My bashprofile looks like this : # @(#)B11.23_LR # Default user .profile file (/usr/bin/sh initialization). #! /usr/bin/bash # Set up the terminal: if then eval ` tset -s -Q -m ':?hp' ` else eval ` tset -s -Q ` fi stty erase "^H"... (0 Replies)
Discussion started by: swethuanju
0 Replies

4. Shell Programming and Scripting

Getting the value of env variables

Hi, I want to get the value of the env varables using the ksh script. All the env variables are stored in a file. Eg. file1 $INPATH $OUTPATH myscirpt: for name in `awk { print $1 } file1` do cd $name done i'm getting the error like $INPATH not found. in the same script... (1 Reply)
Discussion started by: vij_krr
1 Replies

5. UNIX for Dummies Questions & Answers

set env variables in a new xterm

Hi, I have a script that sets some env variables. I want to source the script in a new xterm and after the script execution is over, the xterm has to be alive with the env variables set according to the script. I tried xterm -e "source ./myscript;tcsh" & The variables are getting set... (3 Replies)
Discussion started by: chaitubek
3 Replies

6. UNIX for Dummies Questions & Answers

How to update env variables.

I am newbie on Unix system and seek help for updating env variables. The condition is like this: On Unix server, I log in as oracle user (this is the super for database on Unix), I type > env all envirnment variables show up. I saw one variable DBA_LIST contains a few email addreses. I need... (2 Replies)
Discussion started by: duke0001
2 Replies

7. Solaris

env variables again

What is the difference between ${variable} and $variable when used in a script? (2 Replies)
Discussion started by: orange47
2 Replies

8. Red Hat

how to use env variables within ed

i have a file that i need to edit and replace a single value with another. so i have two variables, $oldvalue and $newvalue but below doesn't work: ed file.txt << EOF ,s/$oldversion/$newversion/g wq EOFi presume it's the $ that is the issue since it's actually special to ed. any suggestions?... (1 Reply)
Discussion started by: crimso
1 Replies

9. Shell Programming and Scripting

Env variables in script

Hi All, I have script and it's hardcoded the script ca invoke in user home dir and logs will be redirected to home dir of user. how to make the same script will be invoke from /usr/bin with out chg the logs and other functions path from /user/homedir . code is below: pls check how to... (1 Reply)
Discussion started by: saku
1 Replies

10. Shell Programming and Scripting

Setting ENV variables in PERL

I have perl script and in the first line we are invoking .sh script to set ENV variables. e..g eval '. $envfile; exec $PERL -S $0 "$@"' I want to change some of the env variables while the program is running and I am settging it like this .. $ENV{ORACLE_HOME}=trim($oraclehome);... (1 Reply)
Discussion started by: talashil
1 Replies
SPD-SAY(1)							   User Commands							SPD-SAY(1)

NAME
spd-say - send text-to-speech output request to speech-dispatcher SYNOPSIS
spd-say [options] "some text" DESCRIPTION
spd-say sends text-to-speech output request to speech-dispatcher process which handles it and ideally outputs the result to the audio sys- tem. OPTIONS
-r, --rate Set the rate of the speech (between -100 and +100, default: 0) -p, --pitch Set the pitch of the speech (between -100 and +100, default: 0) -i, --volume Set the volume (intensity) of the speech (between -100 and +100, default: 0) -o, --output-module Set the output module -l, --language Set the language (iso code) -t, --voice-type Set the preferred voice type (male1, male2, male3, female1, female2, female3, child_male, child_female) -m, --punctuation-mode Set the punctuation mode (none, some, all) -s, --spelling Spell the message -x, --ssml Set SSML mode on (default: off) -e, --pipe-mode Pipe from stdin to stdout plus Speech Dispatcher -P, --priority Set priority of the message (important, message, text, notification, progress; default: text) -N, --application-name Set the application name used to establish the connection to specified string value (default: spd-say) -n, --connection-name Set the connection name used to establish the connection to specified string value (default: main) -w, --wait Wait till the message is spoken or discarded -S, --stop Stop speaking the message being spoken in Speech Dispatcher -C, --cancel Cancel all messages in Speech Dispatcher -v, --version Print version and copyright info -h, --help Print this info ENVIRONMENT
SPEECHD_ADDRESS specifies TCP endpoint where speech-dispatcher is listening and to which spd-say should connect. Has form of <method>:<address>, where <method> is one of unix_socket and inet_socket. The <address> is either path to Unix domain socket if method is unix_socket, of IP address if method is inet_socket. SEE ALSO
speech-dispatcher(1) The full documentation for spd-say is maintained as a Texinfo manual. If the info and spd-say programs are properly installed at your site, the command info spd-say should give you access to the complete manual. spd-say 0.7.1 March 2011 SPD-SAY(1)
All times are GMT -4. The time now is 07:32 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy