rake task ) fileutils how to remove parent specific folder

18 views
Skip to first unread message

Erwin

unread,
Nov 20, 2012, 6:08:21 AM11/20/12
to rubyonra...@googlegroups.com
I have a fixtures directory structure 

fixtures
  en
    alpha
    beta
    delta
  es
    alpha
    beta
    delta

and one rake task to remove all fixtures

        path = File.join(MyApp.config.fixtures_path)
        FileUtils.rm_rf(path)

or all folders w specific locale   
        path = File.join(MyApp.config.fixtures_path, locale)
        FileUtils.rm_rf(path)

but is there a way to remove all folders with name 'alpha'  in ALL locales folder, and get a resulting structure

fixtures
  en
    beta
    delta
  es
    beta
    delta

thanks for your suggestions

Jordon Bedwell

unread,
Nov 20, 2012, 6:18:44 AM11/20/12
to rubyonra...@googlegroups.com
On Tue, Nov 20, 2012 at 5:08 AM, Erwin <yves_...@mac.com> wrote:
> I have a fixtures directory structure
>
> fixtures
> en
> alpha
> beta
> delta
> es
> alpha
> beta
> delta
>
__SNIP__

> is there a way to remove all folders with name 'alpha' in ALL locales
> folder, and get a resulting structure

FileUtils.rm_rf(Dir[Rails.root.join("spec/fixtures", "**/alpha")],
secure: true, force: true)

Jordon Bedwell

unread,
Nov 20, 2012, 6:22:14 AM11/20/12
to rubyonra...@googlegroups.com
Sorry ommit the force, I always forget that force is implied by rf
since I rarely use rf, so it should be
`FileUtils.rm_rf(Dir[Rails.root.join("spec/fixtures", "**/alpha")],
secure: true)`. I use r in production (and on development I trigger a
force but with constraints) because I like exceptions to be raised so
I know exactly what's going on in my filesystem but not all people
care about that

Erwin

unread,
Nov 20, 2012, 6:37:34 AM11/20/12
to rubyonra...@googlegroups.com
Thanks Jordon
I also discover I can use Dir.glob  + match ... with directories .. ( though it was only for file

directories = Dir.glob("#{File.join(MyApp.config.fixtures_path)}/*/\*alpha\*")

will test your answer too..  thanks again

Erwin

unread,
Nov 20, 2012, 6:45:49 AM11/20/12
to rubyonra...@googlegroups.com
Works great Jordon !  thanks again !!



Le mardi 20 novembre 2012 12:22:41 UTC+1, Jordon Bedwell a écrit :
Reply all
Reply to author
Forward
0 new messages