sed -i

Bryan Drewery bdrewery at FreeBSD.org
Wed Jul 2 22:21:17 UTC 2014


On 7/2/2014 5:17 PM, Jilles Tjoelker wrote:
> On Wed, Jul 02, 2014 at 04:21:42PM -0500, Bryan Drewery wrote:
>> On 6/27/2014 4:15 PM, Pedro Giffuni wrote:
>>> While here, there is also the sed(1) syntax issue:
> 
>>> https://www.illumos.org/issues/586
> 
>>> Adopting both changes would probably reduce to a minimum the use of
>>> GNU sed in the ports tree, but such changes are likely to be
>>> controversial(?) and I don’t feel like wearing asbestos underwear at
>>> this time .. at least not for sed ;).
> 
>> IMHO yes that is a good thing to bring over as it helps with people
>> coming from other platforms and improves portability with scripts. I
>> started on Linux and kept wondering why I had FILEe files all over my
>> system until I realized -i '' was required on FreeBSD.
> 
> What are your ideas about the breakage this will cause? sed -i was
> proposed in the Austin Group, but standardization broke down on this
> issue.
> 
> Even a simple grep for 'sed -i' finds a few dozen uses in FreeBSD base
> that would be broken, for example:
> 

Breaking -i '' is not acceptable.

I can't find the patch in question, but from the linked issue I found:

https://gist.github.com/jclulow/1394562

It seems to address the backwards-compat concern.

> etc/Makefile:	sed -i "" -e 's;.*/usr/libexec/atrun;#&;' ${DESTDIR}/etc/crontab
> 
> On the other hand,
> 
> usr.sbin/pc-sysinstall/backend/functions-cleanup.sh:	sed -i -e "s|my.domain|${HOSTNAME} ${HOSTNAME}|g" ${FSMNT}/etc/hosts
> 
> appears to attempt to use the GNU form.
> 
> Also, where a backup suffix is deliberately given, it is always attached
> to -i. Therefore, it would work for the scripts in FreeBSD base to use
> the GNU behaviour except that an empty argument after an argumentless -i
> option counts as an argument to that -i option anyway.
> 


-- 
Regards,
Bryan Drewery

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 553 bytes
Desc: OpenPGP digital signature
URL: <http://lists.freebsd.org/pipermail/freebsd-standards/attachments/20140702/c87f9bcd/attachment.sig>


More information about the freebsd-standards mailing list