## 概要 タイトルの改行区切りから、複数の[[ノート]]を一括削除したい。 ### 例 `Obsidianのすべて`、`Obsidianとは`、`Minervaとは`というタイトルの3つの[[ノート]]がある場合。 ``` Obsidianのすべて Obsidianとは Minervaとは ``` という改行区切りテキストを準備したら、該当の`.md`ファイルを消したい。具体的には - `Obsidianのすべて.md` - `Obsidianとは.md` - `Minervaとは.md` の3つ。 ## ソリューション [[Obsidian]]から[[Chrome devtools]]を開き、以下の順でコマンドを実行します。 ```ts // ファイル名からファイルを取得できるようなfileByNameを作成 fileByName = app.vault.getFiles().reduce((ac, x) => {ac[x.name] = x; return ac}, {}) ``` ```ts // タイトルの改行区切りから削除ファイルリストを作成 files = ` ファイル1 ファイル2 `.trim().split("\n").map(x => `${x}.md`) // タイトルではなくファイル名の羅列である場合は、最後の .map(x => `${x}.md`) は不要 ``` ```ts // コマンド完了後、すべてのファイルが消えるまでは少しラグが生じる (Promiseのため) files.forEach((f) => { app.vault.trash(fileByName[f]) }) ```