Partage
  • Partager sur Facebook
  • Partager sur Twitter

Shell et javascript

    24 octobre 2016 à 13:29:01

    Bonjour à tous,

    Je suis à la recherche d'une solution pour récupérer la sortie d'une commande shell. 

    En effet, j'ai un script .sh qui me retourne 3 chiffres. Je veux les récupérer dans un code javascript.

    Je suis sur un serveur avec httpd où j'ai un dossier avec mon script.sh qui est exécutable (chmod fait).

    J'ai essayé la commande

    var myFile = File("xxx/xxx/xxx/Test.sh");
    var Exec = "sh" + " "+ "\""+myFile+"\"";
    File(Exec).execute();

    mais pas de résultat.

    Je ne sais pas s'il est possible de faire ce que je veux ?

    Je vous remercie d'avance pour votre aide

    • Partager sur Facebook
    • Partager sur Twitter
      24 octobre 2016 à 13:45:59

      Bonjour,

      On va supposer que tu tournes sur un serveur nodejs vu que tu precises pas...

      exec('xxx/xxx/xxx/Test.sh',
        function (error, stdout, stderr) {
          console.log('stdout: ' + stdout);
          console.log('stderr: ' + stderr);
          if (error !== null) {
            console.log('exec error: ' + error);
          }
      });

      Si tu as pas un serveur nodejs va falloir plus de précision.

      Il te faudra le package exec quand même:

      https://www.npmjs.com/package/exec

      -
      Edité par Krogoth 24 octobre 2016 à 13:46:46

      • Partager sur Facebook
      • Partager sur Twitter
      Un petit +1 si je vous ai aidé est toujours appréciable :).
        24 octobre 2016 à 15:43:38

        Merci de votre réponse.

        Je ne sais pas si je suis sur un serveur nodejs. (EDIT : je ne suis passur un serveur avec nodeJS et en plus je nepeux pas installer de paquets).

        Je suis sur un linux embarqué et j'utilise httpd qui est disponible avec busybox.

        Je peux donc utiliser des scripts JavaScript et du HTML. J'ai la possibilité de mettre des scripts dans le dossier cgi-bin pour les exécuter. 

        -
        Edité par Guillaume17 24 octobre 2016 à 17:36:51

        • Partager sur Facebook
        • Partager sur Twitter
          26 octobre 2016 à 17:36:33

          J'ai l'impression que tu essayes de faire ça côté client ..

          Je pense pas que tu puisses exécuter tes scripts dans cgi-bin côté client, faut que tu les exécutes côté serveur.

          Si t'as pas un serveur node tu ne peux pas faire ça avec javascript alors ce n'est pas en javascript que tu dois exécuter tes scripts shell

          • Partager sur Facebook
          • Partager sur Twitter
            26 octobre 2016 à 18:43:26

            Avec PHP, il est possible d'exécuter des scripts coté serveur. Je le fais pour lire des PDF en les transformant en fichiers texte avec cette fonction

            function pdfTxt($n){
              $o=shell_exec('pdftotext -enc UTF-8 '.$n.' pdf.txt');
            	$c=file_get_contents('pdf.txt');
            	return $c;
            }

            Le fichier pdftotext.exe est un exécutable

            • Partager sur Facebook
            • Partager sur Twitter

            Shell et javascript

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown