Mark Baker wrote: > Ian Jackson wrote: > > >Package: debian-policy > >Version: 3.6.1.0 > > > >While trying to merge an NMU to my package, I spotted an idiom > >obviously copied from the policy manual: > > > > if [ -x /usr/sbin/invoke-rc.d ] ; then > > invoke-rc.d package <action> > > else > > /etc/init.d/package <action> > > fi > > > >This would be better expressed as > > > > if type -p invoke-rc.d >/dev/null 2>&1; then > > ... > > > I think it's debatable whether searching the path for a command in an > init script is a good thing, but if we don't search the path for the > test we shouldn't do it when we actually execute the command, so the > code you quote is wrong either way.
Additionally using 'type -p' is bash specific. Therefore it should not be used in /bin/sh scripts. Instead POSIX standard /bin/sh syntax such as 'command -v' should be used. I will rewrite the example for clarity. if command -v invoke-rc.d >/dev/null 2>&1 ; then invoke-rc.d package <action> ... -- Bob Proulx <[EMAIL PROTECTED]> http://www.proulx.com/~bob/