« Return to Thread: Executing unix command ( such as ls ) from the jslib

Re: Antwort: Re: Executing unix command ( such as ls ) from the jslib

by pawan_sin99 :: Rate this Message:

Reply to Author | View in Thread

I started sever its working fine...with command line...
Now I made a c program which do
system(ls | nc localhost 6669);
The above statement is working fine...

But when I do,
system( ls |  myprog | nc localhost 6669) ;

myprog is in the bash file PATH of my shell....but here the system command does not find myprog path......means it is not including the PATH of the bash of shell...So After lot of search also I cannot able to debug this error....

So , how to include shell enviroment to my program..Is there anyway of doing that or any other method by which I am able to do such stuff?


Secondly,,,,.when I use

var file = new File("/home/pawan/text.txt").
 It creates file named test.txt in home of user pawan....

function createFile()
{  
  jslib.init(this);
  include (jslib_file);
  var file = new File("test.txt");
  file.open("w");
  file.write("This is a first file created by browser\n");
  file.close();
}

This program I am using to create file ...but it does not create file..I don't know y ...May be its creating the file from where firefox is invoked...

But how to create file in my chrome://somename/content/
I want to create file in this folder....

Thanks in advance,
Pawan Kumar






Thanks it  worked...!!!
Peter Leugner wrote:
You can start a local server that's listening to a socket and redirect
stdout to that socket with the help of netcat

Example:

var listener = {
  onStopListening: function() {},
  onSocketAccepted: function(server, transport) {

    try {
      var stream = transport.openInputStream(0,0,0);
      var instream = Components.classes
["@mozilla.org/scriptableinputstream;1"].createInstance
(Components.interfaces.nsIScriptableInputStream);
      instream.init(stream);
    } catch (e) {
      alert("Error "+e);
    }

    var dataListener = {
        data:"",

      onStartRequest: function(request, context) {
            this.data="";
      },

      onStopRequest: function(request, context, status) {
        instream.close();
      // this.data has the sent data
      },

      onDataAvailable: function(request, context, inputStream, offset,
count) {
        this.data = this.data + instream.read(count);
      }
    };

    var pump = Components.classes
["@mozilla.org/network/input-stream-pump;1"].createInstance
(Components.interfaces.nsIInputStreamPump);
    pump.init(stream, -1, -1, 0, 0, false);
    pump.asyncRead(dataListener,null);
  }
};

function startServer() {

  try{
    var socket = Components.classes
["@mozilla.org/network/server-socket;1"];
    server = socket.createInstance();
    server = server.QueryInterface(Components.interfaces.nsIServerSocket);

    server.init(6669,true,-1);
    server.asyncListen(listener);
  }
   catch (e){
     alert("Error: "+e);
  }

}

function stopServer() {
      if (server) server.close();
}


Start the server and then start the script piping the output like

ls | nc localhost 6669

Good luck,

Peter Leugner
---------------------------------------------------------------------
Leiter IT Anwendungsentwicklung
Tel.: +49 (0) 89 45 06 63 26
Fax: +49 (0) 89 45 06 63 81
e-Mail: pleugner@as-computer.de
Web: www.as-computer.de

AS Computer Consulting & Service GmbH
Sitz: München
Geschäftsführer: Dipl.-Ing. (FH) Andreas Erhart
Register: München HRB 111 507


|------------>
| Von:       |
|------------>
  >--------------------------------------------------------------------------------------------------------------------------------------------------|
  |pawan_sin99 <PAWANthethunder@gmail.com>                                                                                                           |
  >--------------------------------------------------------------------------------------------------------------------------------------------------|
|------------>
| An:        |
|------------>
  >--------------------------------------------------------------------------------------------------------------------------------------------------|
  |jslib@mozdev.org                                                                                                                                  |
  >--------------------------------------------------------------------------------------------------------------------------------------------------|
|------------>
| Datum:     |
|------------>
  >--------------------------------------------------------------------------------------------------------------------------------------------------|
  |04/05/2009 20:39                                                                                                                                  |
  >--------------------------------------------------------------------------------------------------------------------------------------------------|
|------------>
| Betreff:   |
|------------>
  >--------------------------------------------------------------------------------------------------------------------------------------------------|
  |Re: [Jslib] Executing unix command ( such as ls ) from the jslib                                                                                  |
  >--------------------------------------------------------------------------------------------------------------------------------------------------|
|------------>
| Gesendet   |
| von:       |
|------------>
  >--------------------------------------------------------------------------------------------------------------------------------------------------|
  |jslib-bounces@mozdev.org                                                                                                                          |
  >--------------------------------------------------------------------------------------------------------------------------------------------------|






So, how can we get the stdout ..because I have to display results...Is
there
anyway to do it...........




Pete Collins wrote:
>
> nsIProcess only supports executing commands and not returning stdout
> back to the caller ...
>
> --pete
>
> pawan_sin99 wrote:
>> Hi, I am developing an extension which will run unix command of shell
>> such as
>> ls..and fetch the ls result and displays it on addon...I am not getting
>> how
>> to do it with jslib.
>>
>>
>> Thanks in advance,
>> Pawan Kumar
>>
>
> --
> Pete Collins - Founder, Mozdev Group Inc.
> www.mozdevgroup.com
> Mozilla Software Development Solutions
> tel: 1-719-302-5811
> fax: 1-719-302-5813
>
> _______________________________________________
> Jslib mailing list
> Jslib@mozdev.org
> https://www.mozdev.org/mailman/listinfo/jslib
>
>

--
View this message in context:
http://www.nabble.com/Executing-unix-command-%28-such-as-ls-%29-from-the-jslib-tp22891225p22895561.html

Sent from the MozDev - jslib mailing list archive at Nabble.com.

_______________________________________________
Jslib mailing list
Jslib@mozdev.org
https://www.mozdev.org/mailman/listinfo/jslib

!DSPAM:3,49d8fac747199060010485!


 
 
_______________________________________________
Jslib mailing list
Jslib@mozdev.org
https://www.mozdev.org/mailman/listinfo/jslib

 « Return to Thread: Executing unix command ( such as ls ) from the jslib