Solved

Perl's problem with running an external program

Posted on 1997-07-26
5
158 Views
Last Modified: 2013-12-25
Dear Perl experts,

I am trying to execute an external program through a perl script. This script creates a file, updates a file, and creates an HTML page on the fly. The script then needs to run a program called 'waisindex' to create several files. Waisindex works ok if it is run from the Unix command line. A file permission of 'sum_$id_value[1].txt' is 644, but other's permissions are 755. The related part of the script is as follows:
--------
.
.
.
`/home/dcs0ock/bin/waisindex -t fields -d /home/dcs0ock/wsdb/sear -a /home/dcs0ock/public_html/terra/summary/sum_$id_value[1].txt`;
--------------
0
Comment
Question by:dcs0ock
5 Comments
 
LVL 5

Expert Comment

by:icd
ID: 1829420
Not too sure about this, hence the comment rather than the answer.

You don't say what the actual error reported is.

Remember that as a user accessing the script through a web browser you will have a different user name (something like 'nobody'). Presumably you will have a different 'home' directory as a consequence. Could this be your problem?

0
 

Author Comment

by:dcs0ock
ID: 1829421
The actual error of the perl script is that a part related to
'waisindex' of a perl script would not be run. The script has
been used as a CGI script without any problem and I've added the part of 'waisindex' to the script. The other parts of the script except a 'waisindex' part shown in the above question are normally run ok. Thus, it seems to me that this problem is not
concerned with a different user name or different 'home' directory. Have you got any clue?

Thank a lot.
0
 
LVL 2

Expert Comment

by:n3mtr
ID: 1829422
Try putting the waisindex command inside a system call instead of using backticks.
ex:
system("/directory/waisindex options");

0
 

Author Comment

by:dcs0ock
ID: 1829423
Edited text of question
0
 
LVL 3

Accepted Solution

by:
pc012197 earned 50 total points
ID: 1829424
Try to separate the three commands with semicolons instead of just newlines.
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

In this tutorial I will show you how to provide a dynamic RTF document on your website generated with data from your database. For this tutorial you will need Microsoft Word or WordPad, WhizBase and Microsoft Access. In this tutorial I will show …
I hope you'll find this tutorial useful and interesting. So let's try to extend Tcl with a new package.  For anyone more deeply interested please check out the book "Practical Programming in Tcl and Tk". It's really one of the best written books abo…
The viewer will learn how to dynamically set the form action using jQuery.
The viewer will learn how to create and use a small PHP class to apply a watermark to an image. This video shows the viewer the setup for the PHP watermark as well as important coding language. Continue to Part 2 to learn the core code used in creat…

910 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

21 Experts available now in Live!

Get 1:1 Help Now