Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 2 Aug 2002 19:22:36 -0500
From:      Dan Nelson <dnelson@allantgroup.com>
To:        Pascal Giannakakis <capm@gmx.net>, freebsd-questions@FreeBSD.ORG
Subject:   Re: smart file gobbling: exclude one file from list
Message-ID:  <20020803002236.GA4398@dan.emsphone.com>
In-Reply-To: <20020802220620.GN52563@freepuppy.bellavista.cz>
References:  <001201c23a6e$17e78e60$0200a8c0@capm> <20020802215617.GA9408@dan.emsphone.com> <20020802220620.GN52563@freepuppy.bellavista.cz>

next in thread | previous in thread | raw e-mail | index | archive | help
In the last episode (Aug 03), Roman Neuhauser said:
> > In the last episode (Aug 02), Pascal Giannakakis said:
> > > if i do "cp * /destination", all files in the current directory
> > > will be copied to /destination. What do i have to type, if i want
> > > to expand the '*' to all files, except of one? For example, if i
> > > wanted to exclude the file "notme" in the current directory?
> > > 
> > > I know i could hack it with grep, but this fails as all files are
> > > on one line. I wonder how you gurus would solve this! :)
> > 
> > If you are using zsh and have the EXTENDED_GLOB option set,
> > 
> > cp *~notme /destination
> > 
> > Otherwise, you'll need to do something like
> > 
> > cp $(echo ' ' * ' ' | sed -e 's/ notme / /') /destination
> 
>     this is somewhat easier:
> 
>     cp $(echo `ls|grep -xv notme`) /destination

Although I don't think either will handle files with spaces in them. 

-- 
	Dan Nelson
	dnelson@allantgroup.com

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020803002236.GA4398>