Untitled
unknown
plain_text
a year ago
1.7 kB
7
Indexable
// Created by Assylken Taukenov
const fs = require('fs');
const path = require('path');
const imageDir = path.join(__dirname, 'public', 'images');
const projectDir = __dirname;
const isImageUsed = (imageName) => {
console.log(`Проверка использования изображения: ${imageName}`);
const searchCommand = `grep -r "${imageName}" ${projectDir}`;
try {
const result = require('child_process').execSync(searchCommand).toString();
return result.includes(imageName);
} catch (error) {
return false;
}
};
const findUnusedImages = (dir) => {
const unusedImages = [];
console.log(`Обход директории: ${dir}`);
const files = fs.readdirSync(dir);
files.forEach((file) => {
const fullPath = path.join(dir, file);
const stat = fs.lstatSync(fullPath);
if (stat.isDirectory()) {
unusedImages.push(...findUnusedImages(fullPath));
} else {
const ext = path.extname(file).toLowerCase();
if (['.png', '.jpg', '.jpeg', '.gif', '.svg'].includes(ext)) {
if (!isImageUsed(file)) {
unusedImages.push(fullPath);
}
}
}
});
return unusedImages;
};
console.log('Начало поиска неиспользуемых изображений');
const unusedImages = findUnusedImages(imageDir);
console.log('Поиск завершен');
if (unusedImages.length > 0) {
console.log('Неиспользуемые изображения:');
unusedImages.forEach((image) => console.log(image));
} else {
console.log('Все изображения используются.');
}
Editor is loading...
Leave a Comment