12

I need to list all the files in the javascript such as "ls"??

Ambika
  • 305
  • 2
  • 3
  • 8

5 Answers5

18

Please give more information of your environment.

Unprivileged JavaScript in a browser can neither list files nor execute programs for security reasons.

In node.js for example executing programs works like this:

var spawn = require('child_process').spawn,
var ls  = spawn('ls', ['-l']);
ls.stdout.on('data', function (data) {
   console.log(data);
});

And there is a direct way to list files using readdir()

Hendrik Brummermann
  • 8,032
  • 2
  • 30
  • 54
6

You can't run system commands on the client with JS since it works inside a browser sandbox. You'd need to use some other client side tech like Flash, ActiveX or maybe Applets

JohnP
  • 48,581
  • 13
  • 106
  • 137
4

An even easier way in node.js is:

var fs = require('fs');
var ls = fs.readdirSync('/usr');

The variable ls now contains an array with the filenames at /usr.

baudot
  • 1,601
  • 18
  • 33
2

AFAIK, you can not run any system command, this will violate the security model. You can do send a print command but I wonder anything beyond that is possible.

Kumar
  • 4,867
  • 7
  • 39
  • 51
2

The short answer is - you should NOT do this as it opens a huge attack vector against your application. Imagine someone running "rm -rf" :).

If you MUST do this and you are 1000% sure you allow only a few commands which cannot cause any harm you can call a server page using Ajax. That page could run the specified command and return response. Again I emphasize this is a huge security risk and should better NOT be done.

Atanas Korchev
  • 30,432
  • 8
  • 57
  • 92
  • Related conversation: http://stackoverflow.com/questions/41088671/asp-net-c-sharp-mvc-website-how-can-i-mount-a-drive-upon-button-click – gunslingor Dec 12 '16 at 00:44