Em 15-05-2013 20:06, Bruce Dubbs escreveu:
> Michael E. Maher wrote:
> 
>> The mail from Matias really says it all, it's the extra `(POSIX regular
>> expressions)' which is screwing up the integer comparison `if test "..."
>> -ge 429; then'.
>>
>> This seems like a bug in either:
>>     less -V giving too much information for xz
>>     - or -
>>     xzless assuming that less -V is a certain way
>>
>> For a quick (untested) hack, you could remove the check or change the
>> statement to:
>>
>> if test "$(less -V | { read ver && echo ${ver#less }; } | awk '{print
>> $1}')" -ge 429; then
> 
> System 1
> 
> $ less -V
> less 444
> ...
> 
> System 2
> 
> $ less -V
> less 451 (POSIX regular expressions)
> 
> The error is in xz assuming that the version format doesn't change.
> 
> It should be something like:
> 
> if ( test "$(less -V | head -n1 | cut -d' ' -f2)" -ge 429; then
> ...
> 
> That's shorter, more robust, and has more clarity.
> 
>    -- Bruce
> 

Thank you, Bruce,

I have got an error with your suggestion. A typo, I think. Corrected
adding a ")" after "429":

if ( test "$(less -V | head -n1 | cut -d' ' -f2)" -ge 429); then

-- 
[]s,
Fernando
-- 
http://linuxfromscratch.org/mailman/listinfo/lfs-support
FAQ: http://www.linuxfromscratch.org/lfs/faq.html
Unsubscribe: See the above information page

Reply via email to