0
votes

Déplacer tous les fichiers .txt d'un dossier vers un autre dossier à l'aide de Node js

J'ai essayé avec ce code mais cela ne fonctionne pas, il affiche une erreur comme si ce fichier n'existe pas dans ce répertoire. Le système prend .txt comme fichier et non comme extension de fichier.

const fs = require('fs');
    var oldPath = '/abc/def/ghi/*.txt'
    var newPath = '/xyz/cbi/'

    fs.rename(oldPath, newPath, function (err) {
    if (err) throw err
    console.log('Successfully renamed - AKA moved!')
    })


0 commentaires

3 Réponses :


0
votes

Essayez celui-ci

​​Pour un fichier:

 var spawn = require('child_process').spawn,
 mv = spawn('mv', ['/dir1/dir2/*','dir1/']);

Pour de nombreux fichiers:

 mv('source/dir', 'dest/a/b/c/dir', {mkdirp: true}, function(err) { 
 });

OU p>

 const moveThem = async () => {
   // Move file ./js/foo.js to ./ns/qux.js
   const original = join(__dirname, 'js/foo.js');
   const target = join(__dirname, 'ns/qux.js'); 
   await mv(original, target);
 }


2 commentaires

J'ai essayé votre solution mais cet affichage d'erreur: mv (oldPath, newPath, {mkdirp: true}, function (err) {^ ReferenceError: mv n'est pas défini


utilisez ceci aussi const {promisify} = require ('util'); const fs = require ('fs'); const {join} = require ('chemin'); const mv = promisify (fs.rename);




1
votes

Essayez celui-ci:

const shell = require('child_process').execSync ; 
const src= `/abc/def/ghi`;
const dist= `/xyz/cbi`;

shell(`mv ${src}/* ${dist}`);


0 commentaires