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!') })
3 Réponses :
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); }
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);
Cela résoudra votre problème Vérifiez ici a> const fs = require('fs-extra')
// With a callback:
fs.copy('/tmp/myfile', '/tmp/mynewfile', err => {
if (err) return console.error(err)
console.log('success!')
})
peut-être utiliser fs.move serait mieux ( github.com / jprichardson / node-fs-extra / blob / master / docs / move .md )
Essayez celui-ci:
const shell = require('child_process').execSync ; const src= `/abc/def/ghi`; const dist= `/xyz/cbi`; shell(`mv ${src}/* ${dist}`);