in reply to Re: Using grep and glob to find directories containing file
in thread Using grep and glob to find directories containing file
Thanks. Putting it in array context -- i.e. @{glob("$_/f*")} - did the trick. I changed the code to:
I'm still not really sure why scalar context doesn't work (indeed, I would have thought scalar context would be better than list context). The stateful carry over part seems to be weird if not buggy. But as long as it works for me by forcing an array context, then it's all good even if it was far from obvious at first glance.
The code seems to work with that change but I just want to check that there is no need to explicitly check "if the list has at least one element" since presumably evaluating the list (by grep) will determine if it is empty or not.perl -wE 'use Data::Dumper;print Dumper grep(@{[glob("$_/f*")]},("dir1 +", "dir2", "dir3"))'
I'm still not really sure why scalar context doesn't work (indeed, I would have thought scalar context would be better than list context). The stateful carry over part seems to be weird if not buggy. But as long as it works for me by forcing an array context, then it's all good even if it was far from obvious at first glance.
|
---|
In Section
Seekers of Perl Wisdom