On 2008-03-28, Eric Blake wrote:
> Chris F.A. Johnson <cfajohnson <at> gmail.com> writes:
>
>> 
>>    You can find a shell function to replace the external basename
>>    command at: <http://cfaj.freeshell.org/shell/scripts/basename-sh>.
>
> Except that your example is not POSIX-compliant.  POSIX requires
> 'basename -- -a' to print '-a', not '--'.

   Right; I'll fix that. Thanks for pointing it out.

> Also, on platforms where // is special (such as cygwin), 'basename //' 
> and 'basename // /' should print '//', not '/', to match the behavior of the 
> basename program on those platforms.

  "
    2. If string is "//", it is implementation-defined whether steps 3
       to 6 are skipped or processed.
  "

  I see no reference in the spec to "// /". Can you tell me where it
  is?

-- 
   Chris F.A. Johnson, webmaster         <http://Woodbine-Gerrard.com>
   ===================================================================
   Author:
   Shell Scripting Recipes: A Problem-Solution Approach (2005, Apress)
.


Reply via email to