Dino Geek essaye de t'aider

Comment utiliser le module Child Process pour exécuter les commandes du Shell?


Le module child\_process dans Node.js permet d’exécuter les commandes du shell et de gérer les sous-processus. Voici les étapes pour l’utiliser:

1. Tout d’abord, importez le module child\_process dans votre fichier JavaScript:

```
const cp = require(‘child_process’);
```

1. Vous pouvez maintenant utiliser les différentes méthodes disponibles dans ce module pour exécuter les commandes shell. Certaines des méthodes fréquemment utilisées sont :

- `exec`: Exécute une commande shell et récupère les résultats dans un callback.

```
cp.exec(‘commande_shell’, (err, stdout, stderr) => { if (err) { console.error(err); return; } console.log(`stdout: ${stdout}`); console.error(`stderr: ${stderr}`);
});
```

- `spawn`: Lance un nouveau processus avec la commande donnée.

```
let child = cp.spawn(‘commande_shell’);
child.stdout.on(‘data’, (data) => { console.log(`stdout: ${data}`);
});
child.stderr.on(‘data’, (data) => { console.error(`stderr: ${data}`);
});
child.on(‘error’, (error) => { console.error(`error: ${error.message}`);
});
```
- `fork`: C’est une version spéciale de `spawn` qui crée un nouveau Node.js processus et établit un canal de communication entre les processus parent et enfant.

```
let child = cp.fork(‘child.js’);
child.on(‘message’, (message) => { console.log(‘message from child:’, message);
});
child.send({ hello: ‘world’ });
```

1. Gestion des erreurs: chaque méthode vous donne accès au code d’erreur, si un problème se produit lors de l’exécution de la commande du shell. Il est important de toujours gérer correctement les erreurs afin d’éviter les problèmes inattendus.

Rappelez-vous que l’exécution de commandes Shell peut représenter un risque de sécurité, en particulier si vous construisez des commandes basées sur des entrées utilisateur. Toujours valider et nettoyer les entrées utilisateur avant de les utiliser pour construire une commande Shell.


Générez simplement des articles pour optimiser votre SEO
Générez simplement des articles pour optimiser votre SEO





DinoGeek propose des articles simples sur des technologies complexes

Vous souhaitez être cité dans cet article ? Rien de plus simple, contactez-nous à dino@eiki.fr

CSS | NodeJS | DNS | DMARC | MAPI | NNTP | htaccess | PHP | HTTPS | Drupal | WEB3 | LLM | Wordpress | TLD | Nom de Domaine | IMAP | TCP | NFT | MariaDB | FTP | Zigbee | NMAP | SNMP | SEO | E-Mail | LXC | HTTP | MangoDB | SFTP | RAG | SSH | HTML | ChatGPT API | OSPF | JavaScript | Docker | OpenVZ | ChatGPT | VPS | ZIMBRA | SPF | UDP | Joomla | IPV6 | BGP | Django | Reactjs | DKIM | VMWare | RSYNC | Python | TFTP | Webdav | FAAS | Apache | IPV4 | LDAP | POP3 | SMTP

| Whispers of love (API) | Déclaration d'Amour |






Mentions Légales / Conditions Générales d'Utilisation