On 04/04/2017 03:35 PM, Rick Stevens wrote:
On 04/04/2017 02:35 PM, Patrick Dupre wrote:
> Hello,
>
> Sorry for the lack for clarity.
> I want to list all the file end in .bib, except the file ending by -e.bib
> This can be done by (from the shell command)
> ls -d !(*(a)(-e)).bib
> or by
> find . !(*(a)(-e)).bib
>
> but, as soon as I put one of these commands in a script file, it does not work
>
> Is it clear?
Yes, but find uses totally different tests. Try:
find . -name "*.bib" -not -name "*-e.bib"
In other words 'find from the current directory all files named "*.bib"
and NOT named "*-e.bib"'
Make sense?
I might also mention that, if you only want to check the current
directory and not EVERTHING below it, use:
find . -maxdepth 1 -name "*.bib" -not -name "*-e.bib"
to restrict the search to the current directory. Or use Joe's
suggestion (which may be cleaner for you):
ls -d *.bib | grep -v -e.bib
>> Sent: Tuesday, April 04, 2017 at 10:57 PM
>> From: JD <jd1008(a)gmail.com>
>> To: users(a)lists.fedoraproject.org
>> Subject: Re: LS in a script file
>>
>>
>>
>> On 04/04/2017 02:34 PM, Patrick Dupre wrote:
>>> find . !(*(a)(-e)).bib
>>> and
>>> ls -d !(*(a)(-e)).bib
>>>
>>>
>>>
>>> work fine in a command line, but never
>>> in a script
>>> command substitution: line 9: syntax error near unexpected token `('
>>>
>>> ls -d !\(*(a)\(-e\)\).bib
>>>
>>> does not work
>>>
>>> ===========================================================================
>>> Patrick DUPRÉ | | email: pdupre(a)gmx.com
>>> Laboratoire de Physico-Chimie de l'Atmosphère | |
>>> Université du Littoral-Côte d'Opale | |
>>> Tel. (33)-(0)3 28 23 76 12 | | Fax: 03 28 65 82 44
>>> 189A, avenue Maurice Schumann | | 59140 Dunkerque, France
>>> ===========================================================================
>>>
>>>
>>>> Sent: Tuesday, April 04, 2017 at 8:25 PM
>>>> From: JD <jd1008(a)gmail.com>
>>>> To: users(a)lists.fedoraproject.org
>>>> Subject: Re: LS in a script file
>>>>
>>>>
>>>>
>>>> On 04/04/2017 12:13 PM, Terry Polzin wrote:
>>>>>
>>>>> 2017-04-04 14:05 GMT-04:00 Patrick Dupre <pdupre(a)gmx.com
>>>>> <mailto:pdupre@gmx.com>>:
>>>>>
>>>>> Hello,
>>>>>
>>>>> How can I put this command in a script file?
>>>>> FILES=`ls -d !(*(a)(-e)).bib`
>>>>>
>>>>> I get an error because of the (
>>>>> Have you tried to "escape" them
>>>>>
>>>>>
>>>>> FILES=`ls -d !\(*(a)\(-e\)\).bib`
>>>> For me, it works under bash like this:
>>>>
>>>> ls `[ ! \(*(a)\(-e\)\).bib ]`
>>>> _______________________________________________
>>>> users mailing list -- users(a)lists.fedoraproject.org
>>>> To unsubscribe send an email to users-leave(a)lists.fedoraproject.org
>>>>
>>> _______________________________________________
>>> users mailing list -- users(a)lists.fedoraproject.org
>>> To unsubscribe send an email to users-leave(a)lists.fedoraproject.org
>> Patrick, it would help the list members GREATLY, if you explain
>> in plain english, WHAT are you trying to achieve with that ls -d
>> .....etc command?
>> _______________________________________________
>> users mailing list -- users(a)lists.fedoraproject.org
>> To unsubscribe send an email to users-leave(a)lists.fedoraproject.org
>>
> _______________________________________________
> users mailing list -- users(a)lists.fedoraproject.org
> To unsubscribe send an email to users-leave(a)lists.fedoraproject.org
>
--
----------------------------------------------------------------------
- Rick Stevens, Systems Engineer, AllDigital ricks(a)alldigital.com -
- AIM/Skype: therps2 ICQ: 226437340 Yahoo: origrps2 -
- -
- Squawk! Pieces of Seven! Pieces of Seven! Parity Error! -
----------------------------------------------------------------------