Shell script help

Parv parv at pair.com
Sat Jul 30 06:57:50 GMT 2005


in message <E9E44D6085C02C80E233D138 at Paul-Schmehls-Computer.local>,
wrote Paul Schmehl thusly...
>
> Running what I *thought* was the same sed command in the Makefile
> of the port doesn't solve the problem of the formatting of the man
> pages, but it doesn't generate any errors either:
> 
> @${SED} -e '/man\.macros/r man.macros' -e '/man\.macros/d' 
> ${WRKSRC}/doc/${f} \
>                > ${WRKDIR}/${f}
> 
> Can someone explain what the sed command is doing?  The man page
> isn't much help.

In the 1st part, sed sends the output of file 'man.macros' to
standard out if it exists (otherwise no worries) when sed sees the
'man\.macros' pattern.

And the 2d part, just deletes that pattern.

There in the sed(1) man page all is.  Or, line by line try this ...

  rm -f q ; echo polka > p
  { echo p  ; echo q; echo p; } | sed -e '/p/r p' -e '/p/d'
  { echo p  ; echo q; echo p; } | sed -e '/p/r q' -e '/p/d'


  - Parv

-- 



More information about the freebsd-questions mailing list