[CentOS] Feed a list of filenames to vim

Tony Mountifield tony at mountifield.org
Wed May 18 15:27:02 UTC 2011

In article <4DD3E087.5060305 at BUC.com>,
Bowie Bailey <Bowie_Bailey at BUC.com> wrote:
> On 5/18/2011 10:42 AM, Michael Gliwinski wrote:
> > How about just:
> >
> >   $ vim *.txt
> >
> > or, if you need recursive:
> >
> >   $ eval vim $(find /some/dir -type f -printf '"%p" ')
> >
> > (shell quotes expansions automatically, but you can still ensure output from 
> > find is appropriately quoted manually)
> Interesting.  I'm not sure what the eval is doing, but it works even
> with spaces in the filenames.  Unfortunately, it won't work with the
> OP's original scenario (a file with a list of filenames to edit).

After a bit of experimentation, I found that this would work:

$ eval vim $(sed 's/.*/"&"/' file)

If this became a frequent requirement, perhaps an alias or function
could be created.

Tony Mountifield
Work: tony at softins.co.uk - http://www.softins.co.uk
Play: tony at mountifield.org - http://tony.mountifield.org

More information about the CentOS mailing list