On Sat, Feb 05, 2011 at 09:49:30PM -0500, Albert Lee wrote:
Anyone using the original Bourne sh *interactively* is in for a world of pain anyway (speaking as someone who often had to before the ksh93 replacement). I think relying on tilde expansion can can be considered good practice for the interactive use case.
I wouldn't rely on ~ expansion - not unless you detect that it has returned empty string. Although anyone using a system that doesn't support it (most likely Solaris's /bin/sh) will probably know how to avoid the problem, not knowing what is wrong is more problematical.
Adding a few 'sh' conditional substitutions to a script might show some people just how powerful the language is - especially if they have onely ever seen windows cmd.com .bat scripts.
I've seen some recent systems fail to expand ~ properly (for some definition of the word 'properly') most noticably cygwin on windoes 7.
David