You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
1.5 KiB
37 lines
1.5 KiB
const dir = process.argv[process.argv.length-1];
|
|
const fs = require('fs');
|
|
// const fsPromises = fs.promises;
|
|
const ExifImage = require('exif').ExifImage;
|
|
|
|
fs.readdir(dir, (err, files) => {
|
|
for (let file of files) {
|
|
try {
|
|
const newpromise = new ExifImage({ image : dir + file }, (error, exifData) => {
|
|
if (error){
|
|
// console.log('Error: '+error.message);
|
|
// console.log(file);
|
|
}
|
|
else{
|
|
if(exifData.exif.CreateDate){
|
|
// console.log(exifData.exif.CreateDate); // Do something with your data!
|
|
const extension = file.substring(file.lastIndexOf('.'));
|
|
let newFileName = exifData.exif.CreateDate + "__" + new Date().getTime() + extension;
|
|
// console.log(newFileName);
|
|
// fsPromises.copyFile(dir+file, '~/Downloads/vivienne/photosreorg/' + newFileName).catch((error) => {
|
|
// console.log(error);
|
|
// });
|
|
fs.copyFile(dir+file, '~/Downloads/vivienne/photosreorg/' + newFileName, fs.constants.COPYFILE_EXCL, (err) => {
|
|
if(err){
|
|
console.log(err);
|
|
}
|
|
});
|
|
}
|
|
}
|
|
});
|
|
} catch (error) {
|
|
// console.log(file);
|
|
// console.log('Error: ' + error.message);
|
|
}
|
|
}
|
|
})
|