# vim find buffer by absolute path

How can I find a buffer in vimscript when I have an absolute path, and as you know vim buffer names can be relative path? Is there a function for that?

• "related path" -> you mean "relative path"? – akira Jan 25 '15 at 19:37

The bufnr() function can find buffers (and return its number). Like bufname(), this can take the queried buffer name in several forms (cp. :help bufname()):
  A full match is preferred, otherwise a match at the start, end
full match then put "^" at the start and "$" at the end of the pattern.  So, one example would be :echo bufnr('^C:\path\to\file.txt$')

Also, you can convert between relative and absolute paths via the fnamemodify() function.