On Nov 19, 2010, at 7:12 AM, Christian Weisgerber wrote:

> Devin Teske <[email protected]> wrote:
> 
>>>> So, just as the subject-line says, ... here's an efficient and robust
>>>> spinner function compatible with many shells.
>>>>                       DONE=$( /bin/sh -c 'read -t 0 DONE; echo $DONE' )
>>> 
>>> Is this expected to be portable to other operating systems? The dash
>>> shell, used as /bin/bash in Ubuntu, does not acept the "-t" argument
>>> to the read builtin command. Using /bin/bash solves the problem.
>> 
>> I was shooting for bourne-shell,
> 
> FreeBSD's /bin/sh is *not* a Bourne shell.

I see that now from the sh(1) manual (had been assuming it was true to its 
roots from 4.4BSDLite -- ala FreeBSD-1.0). More akin to Korn shell while 
maintaining POSIX.2 spec.




> 
>> It's rather unfortunate that bourne-shell has what we need but is not
>> available on all operating systems since many OSes have started swapping
>> out bourne-shell for it's younger cousin.
> 
> A traditional Bourne shell, such as Solaris's, does not implement
> read -t at all.

Thanks!

I guess that means that this code is specific to FreeBSD. I guess that means I 
love FreeBSD even more than I did before. Unfortunately, that means that if I 
want to implement this spinner on any other platform, I'll have to resort to my 
previous impementations -- using backgrounding and/or temporary files on-disk.


> 
> -- 
> Christian "naddy" Weisgerber                          [email protected]
> 
> _______________________________________________
> [email protected] mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
> To unsubscribe, send any mail to "[email protected]"

--
Cheers,
Devin Teske

-> CONTACT INFORMATION <-
Business Solutions Consultant II
FIS - fisglobal.com
510-735-5650 Mobile
510-621-2038 Office
510-621-2020 Office Fax
909-477-4578 Home/Fax
[email protected]

-> LEGAL DISCLAIMER <-
This message  contains confidential  and proprietary  information
of the sender,  and is intended only for the person(s) to whom it
is addressed. Any use, distribution, copying or disclosure by any
other person  is strictly prohibited.  If you have  received this
message in error,  please notify  the e-mail sender  immediately,
and delete the original message without making a copy.

-> END TRANSMISSION <-

_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[email protected]"

Reply via email to