Global (Mass / Vault-wise) search & replace

Thousand upvotes.

I come from CRM, where, basically, you manage clients, calls, contacts, contracts, all kinds of labelled and tagged information. Imagine selling a CRM without the ability to make a quick change on the status or label of a 50 or 500-item found set of contacts. You’d never be able to.

I know O is not a CRM, but you know what, I’m going to make it one, because the rest of it is exactly what I need.

But something as rudimentary as changing the tags on 10 found entries, for example-- it’s astounding that I can’t do that, really. For an app that has so many of the obvious bases covered.

Yes, I know about the 2-3 workarounds, but they are just that.

And-- extending this request to also taking a found set after a query, and right clicking on that found set (which you can’t do) like you can in the obsidian file manager, and choosing “move selected items to folder…” or something like that.

That to me is just as much “mass search and replace” – you’re looking for a certain condition (search tag, keywords, regex, etc.), finding that set, and then ACTING on that set (swap tags, delete tags, replace whole phrases, or even move the very file to a slightly different relative folder location)

Why have the ability to create and use folders, when you can only act on items piecemeal? Why have the wonderful search capability we have, without then being able to do something with the found set at all!? (I don’t count merely copying a text list or outline as something)

I mean, it’s veritably barbaric (You have to say that like Mr Howell on Gilligan’s Island)!

Lord, I apologize. :pray: :man_shrugging: :sweat:


It will be nice to also have an option for Regular Expression (regexp) Search and Replace.
It will be useful in a knowledge badge project.


+1 for feature


I think it’s worth mentioning, for some users at least, that external text editors can handle this now. I didn’t find a topic on general global search and replace in this forum. The other topic mentioned refers specifically to internal links.

I use Notepad++ on Windows to search and replace across the vault. It includes the ability to filter file types and can use regular expressions. Standard disclaimer applies: Back up first before doing a global replace, check after replacing, yadda, yadda.

There are Mac and Linux tools.


I am on MacOS and use VS Code.


As people have mentioned already, you can use a workaround by doing it on a code editor e.g. install Atom editor, open project → your Obsidian vault folder, Ctrl+Shift+F to search and replace all instances inside this folder.


VS Code. Ctrl + Shift + H works well for this. :partying_face:


When this will be implemented?

1 Like

@ViaAhmed: the devs never give a specific timeline, only short term, long term.


Atleast, Whether is it in the timeline?

1 Like

@Klaas you are an insider, isn’t it? Can you please ask Devs to work on this if they aren’t already on it. Just atleast raise this feature request in the insider group.

1 Like

@ViaAhmed: yes I am an Insider, no, I cannot ask the Devs what you want because it does not work like that. Being an Insider only means I get to see new features before those who have not paid.

Licat decides himself what he does when, even the moderators cannot interfere !


Ok, thanks for your clarification. So now, we will just wait for it, no problem.

1 Like

@ViaAhmed: yes. It is on the so-called roadmap, it was even moved from long term to short term, but then Obsidian mobile came up and was given priority.

So, I don’t know how short/long is “short term”.


On Mac OS or Linux, or using the Windows Subsystem for Linux (WSL), the sed command makes an excellent workaround that allows for regular expressions.

I recommend anyone with a need to batch edit files learn some of sed. Most of us will run into use cases that go beyond anything we could reasonably expect an application, or even a plugin, to cover. sed is a great Swiss Army knife for text manipulation with tons of support online.

Originally I planned to share a command that I recently ran to delete one of my metadata categories. Decided against this:

  • Running terminal commands from random people online like me is an exceptionally bad idea. You would have to learn some sed anyhow to make sure I am not trolling you by wrecking your computer.
  • Knowing even a little bit of what you’re doing with command-line tools is going to give you grand and terrible ideas for your notes, how to manage them, and how to make use of them.
  • You’ll better appreciate the Obsidian team’s decision to store your notes in a common, plain text format. It’s not just about “owning” you notes but about making them available to other tools.

How do you do the automatic backlinking feature? I would like to use that for a particular project I’m working on. Is that in Obsidian or

1 Like

I think this is one of the strengths of plain text, there are already plenty of tools that handle this really well without needing to bake the complexity into Obsidian. sed and Sublime Text come to mind first.


+1 for this feature.

Is there any specific reason why this fundamental feature was not implemented from the beginning ?


Considering the dynamic nature of your notes and links this will be a really useful feature

1 Like

Appreciate your saying about “not owning but to make them available to other tools”, think that’s the core value of Obsidian