Triggering UNIX command from Web Browser


 
Thread Tools Search this Thread
Operating Systems Solaris Triggering UNIX command from Web Browser
# 1  
Old 03-16-2010
Debian Triggering UNIX command from Web Browser

HI,
I want to trigger a UNIX command from a web browser page.
The web browser will have few steps which will generate the UNIX command and then it should connect to the UNIX box and fire that command.

Here we are using Sun Solaris UNIX.

Can you please suggest me how can i get connected to the UNIX box and pass the sting of command to fetch the result.

Smilie
# 2  
Old 03-16-2010
That depends on the programming language you use for your webapplications. Also, the command would be executed under the webservers userid. Please explain in more detail what you want to do.
# 3  
Old 03-16-2010
Java

HI
We are mainly trying to give access to the UNIX box to the users, which is been used to just extract few log files from the application server.
Hence we are developing a HTML page where it will ask few details about the required log files which is to be searched on the UNIX box in a particular server folder, and that log file would get e-mailed to the user.

The language used in the web page would be simple HTML Forms. (if required then C#)

So we need some connect string which can pass the generated UNIX cmd from the HTML page to the application server which will fetch the output

Thanks
Abhijeet
# 4  
Old 03-16-2010
So what you need is basically a cgi script that is called in the action handler of a html form. You can write cgi scripts in many programming languages, many people prefer perl for this, but you can also use shellscripts.

If you write a shellscript, you can user the environment variable $QUERY_STRING supplied by the webserver and perform actions based on its contents.

If you want to run the script under a different userid than the webserver you need a mechanism like sudo.
# 5  
Old 03-16-2010
But how do i send the created query to the UNIX server.

If you can show me an simple example that would be great.

Like i need to pass simple ls -ltrh >temp1 on a application server in mount point eg - /onestmp


how do i pass and capture the command.
# 6  
Old 03-16-2010
Like i need to pass simple ls -ltrh >temp1 on a application server in mount point eg - /onestmp
how do i pass and capture the command.


How you pass the command depends on your programming language - if t's a shell script, you "pass" it exactly as you wrote it. With Perl, you'd use "system".

As you sent the output to a file, you just need to read that file to get the output. That's often the easiest way to do it, especially for something as simple as "ls" that you don't need to interact with. Programming feeding and reading one program from another is more complicated.

---------- Post updated at 11:36 AM ---------- Previous update was at 11:23 AM ----------

Heres another way to do that:

#
Code:
!/usr/bin/perl
print "Content-TYPE: text/html\n\n";
print "<ul>";
open(READ,"ls -ltrh|");
while (<READ>) {
 print "<li>$_";
}
print "</ul>";

# 7  
Old 03-17-2010
OK, here is a working example:

First you need a html page with form(s), lets call it test.html and you put it into the document root of the server:
Code:
<html><head><title>Test Form</title></head>
<body>
  <form action="/cgi-bin/test.cgi" method="get">
    input for GET: <input name="get_input">
    <input type=submit value="Submit via GET">
  </form>
  <form action="/cgi-bin/test.cgi" method="post">
    input for POST: <input name="post_input">
    <input type=submit value="Submit via POST">
  </form>
  </body>
</html>

Next you need a cgi-script. I choose a shellscript using the kornshell. You save it as "test.cgi" into the cgi-bin directory of your webserver.
Code:
#!/bin/ksh
print "Content-type: text/plain\r\n\r"
print "my query string from (GET) is \"$QUERY_STRING\""
print "\nmy stdin (from POST) is"
cat

When you open the test.html page in your browser, you can enter a string into one of the two input fields and press the submit button adjacent to it.

When you press the "Submit via GET" button, you effectively call /cgi-bin/test.cgi?get_input=your_input_string and the browser shows this output:
Code:
my query string from (GET) is "get_input=your_input_string"
my stdin (from POST) is

When you press the "Submit via POST" button, your input is sent to the stdin of the cgi-script.
Code:
my query string from (GET) is ""
my stdin (from POST) is
post_input=your_input_string

What's left for you to do is: receive the actual user's input either via GET or POST and then process the input according to your needs.

I hope, this helps to understand what's going on.

Last edited by hergp; 03-17-2010 at 04:21 AM..
Login or Register to Ask a Question

Previous Thread | Next Thread

8 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Practice UNIX on web Browser?

To practice SQL, there is a very good website called www.sqlfiddle.com no need of installing any external software, it can do almost anything in PL/SQL and Oracle. In a similar manner, is there a good website where i can practice Unix commands on a broswer? I mean, it should be able to execute... (1 Reply)
Discussion started by: Manjunath B
1 Replies

2. Web Development

What is Your Favorite Web Browser?

OK, please vote on your favorite web browser and comment why! Only currently supported browers please! Thanks. PS: I am a big FireFox fan. FireFox add-ons rock! (61 Replies)
Discussion started by: Neo
61 Replies

3. What is on Your Mind?

The Dillo Web Browser

Hello, Have you all noticed that the Dillo web browser always reports bugs just about on every web page. Richard Stallman's Personal Page However some, but not many have none. cheers (2 Replies)
Discussion started by: nigelc
2 Replies

4. Solaris

Web browser not opening

On clicking on my WEB BROWSER . no window is appearing , only a dialog box appearing with named "ALERT" any nothing else. What is browser package name , which is by default in Solaris 10 (3 Replies)
Discussion started by: kush singh
3 Replies

5. Solaris

Can't open netscape web-browser

I am working in solaris 9 and i want to work with web-browser(netscape). but when I am openning it,it shows the message -- An error occurred reading the startup configuration file.Please contact ur administrator./.netscape/preferences.js,line 66:unterminated string literal.t,127.0.0.1 please... (3 Replies)
Discussion started by: smartgupta
3 Replies

6. Shell Programming and Scripting

Triggering my Unix script....

Hi All, i dont have any idea about perl scripting... i need some suggestion so that i can put my effort to find out the solution:D let me explain....one of my tedious task which will taken care by Unix shell script which i prepared. its a kind of routine work that i am running the... (4 Replies)
Discussion started by: Shahul
4 Replies

7. Linux

web browser from konsole

hi experts, i'm running red hat linux, consider there's no visual interface, no X server... actually there is one but it's written in Python! what i need is to intall a decent web browser on it! is it possible? and i only have abt 100 MBs of free disk space... (1 Reply)
Discussion started by: elzalem
1 Replies

8. UNIX for Dummies Questions & Answers

Web browser and web server for Unix

Hi there all I am looking for both a web browser as well as a web server (Ie. Netscape Fasttrack) that will run on HPUX 10. If you know where I can get these free via FTP, please contact me as soon as possible!! Thanks, Mark (1 Reply)
Discussion started by: mleathers
1 Replies
Login or Register to Ask a Question