Homemade Source/Dataview snippets
[DataviewJS] 이름이 중복된 파일 찾기
반응형
옵시디언 Vault 내 중복된 파일을 찾고 목록 출력해주는 dataviewjs입니다.
예시
Dataviewjs Snippet
```dataviewjs
const data = dv.pages();
let countMap = {};
data.forEach((page) => {
if (page.file && page.file.name && page.file.path) {
const fileName = page.file.name;
const filePath = page.file.path;
if (!countMap.hasOwnProperty(fileName)) {
countMap[fileName] = { count: 1, paths: [filePath] };
} else {
countMap[fileName].count += 1;
countMap[fileName].paths.push(filePath);
}
}
});
let duplicateFound = false;
let duplicateCount = 0;
Object.keys(countMap).forEach(key => {
const element = countMap[key];
if (element.count > 1) {
duplicateCount += element.count - 1;
if (!duplicateFound) {
dv.paragraph("==중복 파일이 있습니다==");
duplicateFound = true;
}
dv.span(`《${key}》 파일이 ${element.count}개 발견되었습니다.`);
const pathsToLink = element.paths.map(path => `[[${path}]]`);
dv.list(pathsToLink);
}
});
if (duplicateFound) {
dv.paragraph(`총 ${duplicateCount}개의 중복 파일이 있습니다.`);
} else {
dv.span("중복 파일이 없습니다.");
}
```
반응형
'Homemade Source > Dataview snippets' 카테고리의 다른 글
[DataviewJS] 미해결 링크 페이지를 나열하기 (0) | 2024.03.08 |
---|---|
[DataviewJS] Quick Search MK.2 (7) | 2024.03.07 |
[DataviewJS] 할당된 단축키를 기준으로 명령어 목록보기 (0) | 2024.03.01 |
[Dataview] 고립된 노트 목록 보기 (0) | 2024.02.15 |
[Dataview] Obsidian에서 최근 7일 동안 업데이트된 노트 목록 보기 (0) | 2024.02.15 |