[Solved] Korn Shell execution


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers [Solved] Korn Shell execution
# 1  
Old 07-05-2013
[Solved] Korn Shell execution

There are two Korn Shell scripts :
script_1.ksh ( located in /home/dir1 )
script_2.ksh ( located in /home/dir2 )
Content of script_2.ksh is
Code:
#!/usr/bin/ksh
echo "Hello world.."

The script_2.ksh is called from within script_1.ksh using the following command :
Code:
./home/dir2/script_2.ksh

but the "Hello world.." is not printed .
Error shown is :./home/dir2/script_2.ksh: not found

But , if a SPACE is added in between the dot and forward slash for command , the script works fine.
ie.,
Code:
. /home/dir2/script_2.ksh

Why is it so ?
How does the shell interpret this command , but aborts with the previous one ?
Please explain.
Thanks
Kumarjit
OS : Linux 2.6x

Last edited by vbe; 07-05-2013 at 09:14 AM.. Reason: extra code tags...
# 2  
Old 07-05-2013
Have you tried:
Code:
/home/dir2/script_2.ksh

Does it work?
Why?

Quote:
Error shown is :./home/dir2/script_2.ksh: not found
Which is certainly true...
# 3  
Old 07-05-2013
/home/dir2/script_2.ksh works good .
But the actual problem is something different , in place of script_2.ksh , what I have is a global_variable.cfg file which basically initializes values of a set of environment variables.

sample command in the global_variable.cfg file is like :
TEST_NAME="KUMARJIT"; export TEST_NAME

If I use /home/dir2/global_variable.cfg and try to access the value of TEST_NAME in my script , I am not able to see the value , whereas ,if I use . /home/dir2/global_variable.cfg ( please take a note of space between the dot and forward slash ) , I am able to access the value of the TEST_NAME variable .

Why ?
# 4  
Old 07-05-2013
Ah but now you are not talking of the same thing...
Here Dot is sourcing your environment...
This is the way to load environmnet that has to be set before a script using them can be run when you dont include the needed variable initialization in the script itself...
# 5  
Old 07-05-2013
to add to vbe.

using the "./" is telling the script to look from the current path to execute script.
This User Gave Thanks to techy1 For This Post:
# 6  
Old 07-05-2013
To include variables defined in a configuration file, you need to source the configuration file. In ksh, you can do it one of two ways
Code:
source /path/to/my/configuration/file

or, and this is the more common way
Code:
. /path/to/my/configuration/file

Note the space between the period and the filepath.
This User Gave Thanks to fpmurphy For This Post:
# 7  
Old 07-08-2013
@vbe : It didnt understand the following :
Here Dot is sourcing your environment...

To add to my surprises let me put forward a wierd scenario .
When I am in any folder OTHER THAN THE ONE WHERE THIS global_variable.cfg file resides ,

I can sucessfully execute the following statement and set the environment variables using the file .
Code:
. /<absolute path name>/global_variable.cfg

But when I try the following , the Unix throws an error indicating that the file cannot be found.
Code:
  cd <absolute path name>
  . /global_variable.cfg

Please note , I have included a space between the period and slash everytime , but once I succed , and once I fail .

Why ????

Thanks
Kumarjit.

Last edited by vbe; 07-08-2013 at 09:16 AM.. Reason: missing a code bracket...
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

[Solved] How to refer more than 9 command line inputs for a scripts in korn shell?

Hi all, I have a script which should take more than 9 command line inputs while running. Likescript.sh a s d f g h j j k l o p i u y t r e w Now in the script if I have to access one of the input which is at position after 9, in this case say 'p' then how can I do that? echo $12 will not work... (15 Replies)
Discussion started by: pat_pramod
15 Replies

2. Shell Programming and Scripting

[Solved] Issue with using for loop as for in {2..6} in korn shell

Hi i have to cut columns 2 to 6 from a file and assign it to arrays , The following code works for ctcol in 2 3 4 5 6; do set -A a$ctcol $(cut -d, -f $ctcol test_file) done how ever this does not work for ctcol in {2..6}; do set -A a$ctcol $(cut -d, -f $ctcol test_file)... (4 Replies)
Discussion started by: 100bees
4 Replies

3. Shell Programming and Scripting

[Solved] Command execution in Makefile

Linux Gurus, I have a query regarding the execution of a complex command in the makefile of the current system. I am currently using shell command in the makefile to execute the command. However my command fails as it is a combination of a many commands and execution collects a huge data...... (4 Replies)
Discussion started by: satishkumar432
4 Replies

4. UNIX for Dummies Questions & Answers

[solved]Korn, disabling * substitution

If I execute the following line of code: echo "*" I get a list of files in the current directory. What if all I wanted to do was display the asterisk itself? What does the code have to look like so all I get is an asterisk? Thanks ahead of time for your assistance ----------... (3 Replies)
Discussion started by: Wreckoning
3 Replies

5. Shell Programming and Scripting

[SOLVED] Capturing output in a korn variable

Hi, I'm new to korn and having trouble capturing the text output from one program in an array that I can then feed into another program. Direct approaches didn't work, so I've tried to break it down thus: The program lonlat2pixline gives the values I need in the second column, so I print that... (4 Replies)
Discussion started by: daurin
4 Replies

6. UNIX for Dummies Questions & Answers

[Solved] execution problem

Hi I want to make a script . In this script i want to use input file and this input file consist of three numbers in a line for example input file is as below: 919876543210 09876543234567876 98764534245678 aircelmms","aircelweb","aircelwap" 096574235625... (2 Replies)
Discussion started by: esumiba
2 Replies

7. Shell Programming and Scripting

How to activate Korn Shell functionnalities in Bourne Shell

Hi All I have writing a Korn Shell script to execute it on many of our servers. But some servers don't have Korn Shell installed, they use Borne Shell. Some operations like calculation don't work : cat ${file1} | tail -$((${num1}-${num2})) > ${file2} Is it possible to activate Korn Shell... (3 Replies)
Discussion started by: madmat
3 Replies

8. Shell Programming and Scripting

Korn Shell Script help required during execution...

Hi, The following Korne Shell script does not give any syntax errors but the following while running. Request you to please let me know, how can I define the variables viz.:- listDbs and getkey here, inorder to remove the error. 1) $ ksh -n setAlias $ 2) $ ksh -x setAlias +... (1 Reply)
Discussion started by: marconi
1 Replies

9. Shell Programming and Scripting

how to convert from korn shell to normal shell with this code?

well i have this code here..and it works fine in kornshell.. #!/bin/ksh home=c:/..../ input=$1 sed '1,3d' $input > $1.out line="" cat $1.out | while read a do line="$line $a" done echo $line > $1 rm $1.out however...now i want it just in normal sh mode..how to convert this?... (21 Replies)
Discussion started by: forevercalz
21 Replies

10. UNIX for Dummies Questions & Answers

korn shellscript execution context - exit statement

Hi all, Could someone please explain to me the shell invocation process when running a script. How do I stop the shell from logging out when it reaches an exit statement in the script? if ; then echo 'Failed to copy ${FILE}.fmx to ${J2_HOME}/dev/rsc' ... (3 Replies)
Discussion started by: richgi
3 Replies
Login or Register to Ask a Question