[pacman-dev] [PATCH] Make strip paths configurable

Xavier shiningxc at gmail.com
Mon Jul 28 17:12:02 EDT 2008


On Mon, Jul 28, 2008 at 11:05 PM, Aaron Griffin <aaronmgriffin at gmail.com> wrote:
> On Mon, Jul 28, 2008 at 3:51 PM, Xavier <shiningxc at gmail.com> wrote:
>> On Mon, Jul 28, 2008 at 10:45 PM, Aaron Griffin <aaronmgriffin at gmail.com> wrote:
>>>
>>> aaron at gerolde:~$ [ -z foo bar baz ]
>>> -bash: [: too many arguments
>>> aaron at gerolde:~$ [ -z "foo bar baz" ]
>>> aaron at gerolde:~$
>>
>>
>> Well don't ask me to explain, but here is a closer test case I think :
>>
>> [xavier at nx7400 ~]$ array=({foo,bar,baz})
>> [xavier at nx7400 ~]$ [ -z "${array[@]}" ]
>> bash: [: too many arguments
>
> Weird. I'd guess this is something to do with globbing taking
> priority. Seeing as this is just testing for some value, using single
> quotes fixes the issue.
>
> _______________________________________________
> pacman-dev mailing list
> pacman-dev at archlinux.org
> http://archlinux.org/mailman/listinfo/pacman-dev
>

With single quotes, I am not sure it still works correctly.

[xavier at nx7400 ~]$ unset array
[xavier at nx7400 ~]$ [ -z '${array[@]}' ] || echo array not empty
array not empty
[xavier at nx7400 ~]$ echo '${array[@]}'
${array[@]}

What about handling it just like a normal variable ?
[xavier at nx7400 ~]$ array=({foo,bar,baz})
[xavier at nx7400 ~]$ [ -z "$array" ] || echo array not empty
array not empty
[xavier at nx7400 ~]$ unset array
[xavier at nx7400 ~]$ [ -z "$array" ] || echo array not empty
[xavier at nx7400 ~]$




More information about the pacman-dev mailing list